PEMROGRAMAN BERORIENTASI OBJEK
9.4 Constructor Dan Destructor
Constructor merupakan prosedur yang mengontrol pemberian nilai awal objek baru dan akan dipanggil terlebih dulu sebelum kode-kode lainnya dalam suatu class. Constructor dibentuk dengan menambahkan prosedur Public dengan nama Sub New (). Ketika kita mendefinisikan sebuah class yang berasal dari class lain, baris pertama dari constructor akan berisi prosedur yang memanggil constructor lainnya, baik yang berada dari class yang sama maupun di class induk (base class) dengan kata kuncu
MyBase.New(). Hal ini akan memastikan bahwa semua objek dalam hierarki
inheritance akan diinisialisasi dengan benar.
Contoh : Buat sebuah constructor yang menugaskan argument Nama ke member Xnama dan memanggil subrutin Proses_Data untuk inisialisasi lebih lanjut.
Kode Program
Public Sub New (ByVal Nama As String) MyBase.New()
Xnama = Nama Proses_Data()
End Sub
Destructor merupakan prosedur dalam suatu class yang digunakan untuk membersihkan lokasi memori dimana ia melakukan task lainnya yang harus diselesaikan sebelum objek dimusnahkan. Visual basic.net menggunakan 2 metode destructor yaitu :
a. Subrutin Finalize()
Subrutin finalize() akan dipanggil secara otomatis oleh .Net Framework jika didefinisikan dalam class objek. Umumnya metode Finalize dipakai jika kode-kode program dijalankan objek bertujuan untuk membersihkan memori. Bentuk deklarasinya menggunakan Protected agar class lainnya tidak dapat memanggilnya secara langsung.
Contoh : Buat suatu prosedur Finalize yang berisi class untuk membersihkan memori dengan memanggil class MyBase Finalize.
Kode Program
Protected Overrides Sub Finalize()
‘Tempat Class Untuk Membersihkan Memori’ MsgBox (“Class Untuk Membersihkan Memori”) ‘Memanggil Class MyBase Finalize’
MyBase.Finalize() End Sub
b. Subrutin Dispose()
Subrutin Dispose() tidak akan dipanggil secara otomatis oleh .Net Framework. Oleh karenanya aplikasi harus memanggil subrutin ini sebelum menghancurkan objek.
Contoh : Buat Prosedur Dispose yang berisi class untuk menghapus point tertentu dengan memanggil class MyBase Dispose.
Kode Program
Protected Overrides Sub Dispose (ByVal Disposing As Boolean) ‘Tempat Class Untuk Menghapus Point Tertentu’
MsgBox (“Class Untuk Menghapus Point Tertentu”) ‘Memanggil Class MyBase Dispose’
MyBase.Dispose(Disposing) End Sub
9.5 Inheritance
Inheritance atau sering diartikan dengan mewariskan merupakan kemampuan untuk membuat class turunan yang mewarisi property dan method dari class induknya. Tujuannya adalah sebagai konsep reusability (penggunaan kembali) kode-kode program yang ada pada kelas induk dengan sedikit atau tanpa modifikasi sama sekali.
a. Base Class dan Subclass
Class induk (base class) merupakan class dasar yang dapat mewariskan behavior dan data ke class turunannya. Sedangkan class turunan (subclass) atau Derived Class merupakan class yang dibentuk dari proses pewarisan class induk dengan segala sifatnya. Proses pewarisan dari base class ke derived class disebut Deriving. Semua base class yang dikelompokkan ke dalam suatu wadah yang disebut dengan Namespaces. Sebagai contoh, form Forms.Form yang juga merupakan bawaan dari .Net Framework dan berada pada .Net Framework Namespaces.
Contoh : Buat base class dengan nama “Bapak” dan 2 class turunannya masing bernama “Anak-Pria” dan “Anak_Wanita”. Pada masing-masing class ditambahkan method dan property.
Kode Program
‘Kode Program yang ditempatkan pada base class Bapak’ Public Class Bapak
‘kode-kode program dibase class Bapak End Class
‘Kode Program yang ditempatkan pada Subclass Anak_Pria’ Public Class Anak_Pria
‘kode-kode program dibase class Bapak Inherits Bapak
‘kode-kode program di subclass Anak_Pria End Class
‘Kode Program yang ditempatkan pada Subclass Anak_Wanita’ Public Class Anak_Wanita
‘kode-kode program dibase class Bapak Inherits Bapak
‘kode-kode program di subclass Anak_Wanita End Class
Konsep Dasar Perancangan Program
Konsep dasar pemrograman terstruktur merupakan peranan terpenting dalam merancang, menyusun, memelihara dan mengembangkan suatu program khususnya program aplikasi yang kompleks. Pendekatan pemrograman terstruktur dilakukan dengan cara memecah-mecah suatu masalah yang besar dan rumit menjadi beberapa masalah yang lebih kecil dalam bentuk modul-modul sehingga menjadi cakupan yang mudah ditangani.
Konsep ini pertama kali diperkenalkan oleh Professor Edsger Djikstra dari Universitas Eindhoven, sekitar tahun 1960-an. Sang profesor mengungkapkan bahaya dari instruksi pemakaian loncatan pada program (GOTO) dalam segala bentuk pemrograman. Oleh karena itu mulai dikembangkan konsep dan teknik pemrograman terstruktur.
Pengertian Dan Jenis Program
• Program merupakan kata, ekspresi, pernyataan atau kombinasi program yang disusun dan dirangkai menjadi satu kesatuan. prosedur berupa urutan langkah untuk menyelesaikan masalah yang diimplementasikan dengan menggunakan bahasa pemrograman sehingga dapat dieksekusi oleh komputer.
• Pemrograman merupakan proses mengimplementasikan urutan langkah untuk menyelesaikan suatu masalah dengan menggunakan suatu bahasa pemrograman.
• Bahasa Pemrograman merupakan prosedur atau tata cara penulisan program. Pada bahasa pemrograman terdapat dua faktor penting yaitu sintak dan semantik. Sintak adalah aturan-aturan gramatikal yang mengatur tata cara penulisan kata, ekspresi dan pernyataan. Semantik adalah aturan-aturan untuk menyatakan suatu arti.
• Pemrograman terstruktur merupakan proses kerja untuk mengimplementasikan urutan langkah dalam menyelesaikan suatu masalah dalam bentuk program,
memiliki rancang bangun yang terstruktur dan tidak berbelit-belit sehingga mudah ditelusuri, dipahami, dan dikembangkan oleh siapa saja.
Pemrograman terstruktur memiliki karekteristik antara lain : • Mempunyai teknik pemecahan masalah yang tepat dan benar.
• Memiliki algoritma pemecahan masalah yang bersifat sederhana, standar, dan efektif dalam memecahkan masalah.
• Pada teknik penulisan program, memiliki struktur logika yang benar dan mudah dipahami.
• Umumnya program memiliki tiga struktur dasar yaitu sequence structure, looping structure, dan selection structure.
• Menghindari penggunaan instruksi GOTO. • Membutuhkan biaya testing yang relatif rendah. • Memiliki dokumen yang baik.
• Membutuhkan biaya perawatan dan pengembangan yang relatif rendah.
Secara umum jenis bahasa pemrograman dapat dikelompokkan menjadi 4 kategori :
1. Bahasa Pemrograman Tingkat Rendah (Low Level Language)
Merupakan bahasa pemrograman yang berorientasi pada mesin. Pengguna bahasa tingkat rendah ini harus dapat berpikir berdasarkan logika mesin komputer, karena bahasa ini dinilai kurang fleksibel dan sulit dipahami oleh pemula. Contoh Bahasa Assembly.
2. Bahasa Pemrograman Tingkat Menengah (Middle Level Language)
Merupakan bahasa pemrograman yang menggunakan aturan-aturan gramatikal dalam penulisan ekspresi atau pernyataan dengan standar bahasa yang mudah dipahami oleh manusia serta memiliki instruksi-instruksi tertentu yang dapat diakses oleh komputer. Contoh Bahasa C.
3. Bahasa Pemrograman Tingkat Tinggi (High Level Language)
Merupakan bahasa pemrograman yang menggunakan aturan-aturan gramatikal dalam penulisan ekspresi atau pernyataan dengan standar bahasa yang mudah dipahami oleh manusia secara langsung. Contoh Bahasa Pascal, Cobol, Power Basic, dan lain-lain.
4. Bahasa Pemrograman Berorientasi Objek (Object Oriented Language) Merupakan bahasa pemrograman yang mengandung “kapsul-kapsul” yang berisi fungsi-fungsi untuk menyelesaikan masalah. Dengan menggunakan bahasa ini, pemrograman hanya cukup memasukan kriteria-kriteria yang dikehendaki untuk dapat memecahkan masalah. Contoh Bahasa C++, Visual Basic, Visual Foxpro, Java, dan lain-lain.
Compiler
Compiler berasal dari kata to compile yang artinya menyusun, mengumpulkan atau menghimpun. Compiler merupakan penerjemah bahasa pemrograman yang menerjemahkan instruksi-instruksi dalam satu kesatuan modul ke dalam bahasa mesin (objek program) kemudian objek program akan mengalami proses linking yang berfungsi untuk menggabungkan modul tersebut dengan modul lain yang berkaitan sehingga dihasilkan file executable program yang dieksekusi oleh komputer. Bila pada saat proses penerjemah atau proses linking terjadi kesalahan maka akan tampil pesan kesalahan dan proses eksekusi akan berhenti.
Proses kompilasi dilakukan setelah seluruh program selesai ditulis, karena compiler juga akan memeriksa sintaksis, leksikal, semantik dan logika programnya. Program yang dikompile umumnya berjalan dengan kecepatan tinggi dan tidak bergantung lagi pada bahasa pemrograman yang digunakan untuk menyusunnya.
Kekurangan dari penerjemah jenis compiler ini adalah pada penggunaan memori komputer yang besar pada saat proses kompilasi kode program untuk menghasilkan ojek program executable program.
Interpreter
Interpreter berasal dari kata to interpret yang artinya menerjemahkan atau mengartikan. Interpreter merupakan suatu penerjemah bahasa program yang menerjemahkan instruksi demi instruksi pada saat eksekusi program.
Pada saat menerjemahkan, interpreter akan memeriksa sintaksis, leksikal, dan semantic dari setiap instruksi program. Jika ditemukan kesalahan sintaksis (syntax error) maka interpreter akan menampilkan pesan kesalahan dan proses eksekusi program akan langsung terhenti pada saat itu juga.
Ruang pengingat yang dibutuhkan oleh interpreter tidak besar karena program dieksekusi secara berurutan (sequence). Namun demikian ruang pengingat tersedia harus cukup besat karena pada saat eksekusi itu seluruh source program, data, dan interpreter secara bersamaan berada di dalam ruang pengingat.
Proses penerjemah yang dilakukan interpreter tidak mampu mendeteksi kesalahan logika dan hanya mampu mendeteksi kesalahan sintaksis saja karena itu penerjemah interpreter ini lebih cocok untuk pemula.