Anda di halaman 1dari 7

BAB 7 APLIKASI BERBASIS ANTAR MUKA DAN

DEBUGING APLIKASI

Kompetensi Dasar
3.12 Menganalisis pembuatan aplikasi sederhana berbasis antarmuka (User
Interface).
4.12 Membuat aplikasi sederhana berbasis antarmuka (User Interface).
3.13 Mengevaluasi debuging pada aplikasi sederhana.
4.13 Menggunakan debuging pada aplikasi sederhana.

A. Aplikasi Berbasis Antarmuka (User Interface)

Antarmuka pemakai (User Interface) dapat menerika informasi dari


penggunaan (user) dan memberika informasi kepada user untuk membantu
mengarahkan alur penelusuran masalah sampai ditemukan suatu solusi. Karena
pada dasarnya antarmuka (user interface) identik dengan mekanisme komunikasi
antar pengguna (user) dengan sistem. Namun yang terpenting dalam menjalankan
sistem secara interaktif adalah kemudahan dalam menjalankan sistem secara
interaktif dan komunikatif. Sedangkan faktor kesulitan terletak dalam proses
mengembangkan/membangun suatu program.

1. Jenis-Jenis Antarmuka
Beberapa fungsi user interface di antaranya menginputkan
pengetahuan baru ke dalam basis pengetahuan sistem pakar,
menampilkan penjelasan sistem, dan memberikan panduan pemakaian
sistem secara menyeluruh step by step sehingga user paham terhadap
sistem tersebut. Beberapa jenis-jenis antarmuka yang digunakan dalam
pemrograman C++ antara lain sebagai berikut.
a. CLI (Command Line Interface)
CLI (antarmuka baris perintah) identik dengan suatu bentuk
penggunaan computer berbasis teks, dimana pengguna komputer
memberikan perintah (command/input) kepada computer melalui
pengetikan sejumlah baris perintah untuk kemudian diolah/proses
agar menjadi sebuah keluaran (output).
b. GUI (Graphical User Interface)
GUI identik dengan tipe antarmuka yang digunakan oleh pengguna
untuk berinteraksi dengan sistem operasi melalui gambar-gambar
grafik, ikon, menu dan menggunakan perangkat penunjuk
(pointing device) seperti mouse atau track ball. Elemen utama dari
GUI bisa diringkas dalam konsep WIMP (Window, Icon, Menu
and Pointing device).
2. Program Alarm

Program C++ dalam sistem linux termasuk Bahasa pemrograman yang


sering dipakai untuk keperluan pemrograman sistem (system
programming) yang salah satunya adalah membuat program alarm
dengan memanfaatkan nada beep pada speaker PC internal. Nada beep
bisa dipanggil secara langsung dari terminal linux tanpa harus melalui
program C++

a. Menggunakan fungsi system ()


Fungsi system() dapat dipakai untuk mengeksekusi progtam
executable yang dilampirkan nama programnya dalam bentuk
atribut string. Fungsi ini didefinisikan pada header stdlib.h
sehingga jika ingin memakai fungsi system() maka deklarasinya
adalah:
#include <stdlib.h>
int main()
{
System (“cal”);
Return 0;
}

Di samping itu, nada deep dapat dibunyikan melalui terminal linux.


Apabila program beep telah terinstal dan telah diaktifkan, bisa
memanggil programmnya lewat fungsi system(). Kode yang
digunakan adalah:

#include <stdlib.h>

int main() {

system (“beep -f 2000 -1 5000”);

return 0;

b. Modifikasi Terpogram
Pada dasarnya hasil nada beep cenderung statis sehingga tidak
bisa diatur besaran frekuensi serta waktunya saat runtime.
Supaya nadanya berubah secara bertahap dan terdengar halus,
dilakukan dengan menggunakan persamaan fungsi sinus yang
diperoleh dengan mengubah besar nilai kedalam bentuk radian.

B. DEBUGING PADA APLIKASI


Pada dasarnya, debugging bisa dianggap sebagai suatu proses
menghilangkan bug dari suatu program. Debugging terjadi sebagai akibat
dari pengujian yang berhasil. Jika test case mengungkap kesalahan, maka
proses yang menghasilkan penghilangan kesalahan dianggap sebagai
debugging. Desain test case dapat dilakukan, strategi dapat dilakukan, dan
hasil dapat dievaluasi berdasarkan tujuan awal yang telah ditentukan
sebelumnya. Pengujian aplikasi software adalah proses yang dapat
direncanakan dan ditentukan secara sistematis. Perekayasa aplikasi
software yang mengevaluasi hasil suatu pengujian sering dihadapkan pada
indikasi “simtomatis” dari masalah software bahwa manifestasi eksternal
dari kesalahan dan penyebab internal kesalahan adakalanya tidak memiliki
hubungan yang jelas satu dengan lainnya.
1. Bug dan Debugging
Pada tahun 1945, pihak militer Amerika Serikat menggunakan
komputer MARK 1 yang memiliki ukuran komputer sebesar kamar.
Pada waktu ingin dioperasikan, ternyata komputer tersebut tidak
berfungsi dengan semestinya. Setelah diperiksa dengan seksama, pada
salah satu bagian piranti keras terdapat serangga yang tersankut.
Komputer tersebut dapat berfungsi dengan baik setelah serangga
tesebut diangkat. Sejak saat itulah, kata “bug” melekat dengan
masalah-masalah pada komputer. Bug identik dengan segala macam
cacat dalam program, misalnya cacatnya tampilan yang sedikit salah,
crash, bug security karena semua user bisa melakukan akses, maupun
out of memory jika jumlah user terlalu banyak. Beberapa sumber bug
di antranya salah desain, salah implementasi (coding), salah
konfigurasi, dan sebagainya. Namun dari sekian banyak bug,
kesalahan lebih banyak dijumpai dari sisi implementasi (coding) pada
aplikasi yang bersangkutan misalnya kesalahan logika, kesalahan
aritmatika, keliru dalam pemakaian bahasa pemrograman, mau pun
menggunakan framework tertentu. Beberapa bentuk-bentuk bug yang
umum dijumpai di antarnya sebagai berikut:
a. Lalali dalam menganalisis atau mereset variable. Pada umumnya
program berjalan dengan benar pada saat pertama kali digunakan,
tetapi ketika diulangi kembali ternyata terdapat kesalahan hasilnya
dan benar kembali ketika aplikasi tersebut sudah direstart.
b. Menggunakan try catch secara sepihak dengan membungkus
seluruh fungsi dalam suatu try expect yang berdampak pada tidak
diketahui secara jelas sumber error yang sesungguhnya.
c. Bentuk bug yang spesifik terhadap bahasa adalah bug manajemen
memori di C++, di mana kesalahan mengakses memori di C++
mudah terjadi dan umumnya menyebabkan crash.

Debug mode sangat berguna untuk menelusuri error atau hanya


sekadar melakukan trace terhadap kode-kode dan variable yang ditulis.
Misalnya pada saat melakukan compile tidak terdapat warning maupun
pesan yang error Nampak, tetapi saat aplikasi dijalankan dan
melakukan fungsi tertentu program menjadi hang (not responding).
Hal ini dapat terjadi dikarenakan oleh sebagai faktor, misalnya aplikasi
tersebut dibuild menggunakan Windows OS namun codingannya
menggunakan Linux OS sehingga setelah aplikasi dijalankan dan
ternyata terdapat error. Setelah ditelusuri ternyata aplikasi tersebut
memerlukan file DLL (Dynamic Link Library) yang di-copy
(digandakan) ke dalam suatu folder dengan aplikasi tersebut sehingga
bisa berjalan dengan normal. Namun saat meng-copy-kan program
tersebut ke komputer lain, ukuran file beserta library secara otomatis
akan membengkak beberapa kali lipat.

2. Release
Secara umum release mode digunakan pada saat build dengan library
tanpa disertai informasi debug, sehingga ukuran file aplikasi yang
dihasilkan menjadi lebih kecil. Oleh karena itu, jika ingin menjalankan
aplikasi ke komputer lain ata menyebarnya aplikasi tersebut melalui
internet, sebaiknya menggunakan release mode pada saat melakukan
build. Selain lebih kecil dalam segi ukuran, release mode lebih aman
dari potensi injeksi kode-kode sepeti virus, malware dan lain-lain dari
orang yang tidak bertanggung jawab.
3. Hubungan antara Bug, Debug, dan Release
Pada umumnya dalam pemrograman akan menjumpai istilah Debug.
Debug identic dengan usaha menemukan dan memeperbaiki kesalahan
(bug) dari program yang dibuat. Proses debug dalam pemrograman
identic dengan mencari atau melacak letak baris kode yang
mengandung kesalahan fatal maupun ringan. Pada saat melakukan
build (compile) pada program yang dibuat dalam mode debug, maka
program tersebut telah disisipkan informasi debug yang nantinya akan
digunkan oleh aplikasi debugger misalnya GDB. Secara otomatis file
aplikasi yang di build menjadi lebih besar karena disisipi library dan
informasi debug. Mode debug umumnya digunakan pada lingkungan
development dan lebih merujuk pada kepentingan programmer yang
bersangkutan.
BAB 8 PAKET INSTALLER APLIKASI

Kompetensi Dasar
3.14 Mengevaluasi paket installer aplikasi sederhana.
4.14 Memformulasikan paket installer aplikasi sederhana.

A. DEFINISI PAKET INSTALLER

Dengan adanya installer, sebuah paket aplikasi tidak bisa di copy paste
bigitu saja dari suatu sistem komputer ke komputer lainnya karena pada umumnya
file-file pendukung aplikasi diletakkan pada lokasi yang berbeda dengan file
program utama. Bahasa C++ memiliki tingkat kompleksitas yang tinggi dan
tergantung dari mesin yang digunkan, misalnya Application Programming
Interface (API) pada mesin (platform) Linux OS dan Windows OS yang tentu
berbeda, termasuk dalam menggunakan fungsi-fungsi standar C++. Hal ini berarti
bila membuat program C++ untuk dipakai diplatform Windows, maka program
tersebut tidak akan bisa dikompilasi atau dijalankan di platfrom Linux. Hal ini
juga berlaku sebaliknya.

B. IMPLEMENTASI PAKET INSTALLER


Kemampuan seseorang programmer bisa terasah meskipun hanya dengan
bantuan notepad dan command prompt bisa membuat program kecil sampai besar.
Namun jika berkaitan dengan efisiensi waktu, pemakaian software IDE sangat
membantu seseorang programmer. Pembuatan program C++ pada Windows OS
menggunakan fungsi standar C++ dengan GCC Compiler melalui paket MinGW
(Minimalist GNU for Windows). Sebelum menjalankan pengaturan path GCC
Compiler, aplikasi software MinGW harus diunduh secara gratis (free) di link
MinGW yang beralamat di https://sourceforge.net/downloads/mingw atau
menggunkan alamat alternatif https://mingw.org.

Anda mungkin juga menyukai