Mengenai “Object-Oriented Programming”


Bahasa Pemrograman – Program-Language

Dulu mungkin kita (saya mulai kenal bahasa pemrograman tahun 1991 waktu kuliah D1 di PIKMI IKASSYS Bandung,Pascal) belajar bahasa pemrograman yang difokuskan pada logika yang berstruktur, bahkan bahasa pemrograman dikenal bahasa pemrograman yang terstruktur dan tidak terstruktur. Programmer pada waktu itu berfikir membuat program dengan bentuk yang susun dalam bentuk prosedural. Bahkan ketika bahasa pemrograman dikelompokan dalam 3 (tiga) kelompok berdasarkan bahasa yang digunakan yaitu, a. Bahasa Mesin, b. Bahasa Menengah, dan Bahasa Tingkat Rendah. Bahasa Mesin atau Tingkat Rendah sebagai bahasa yang sulit dipahami dan dimengerti oleh manusia karena bahasanya cenderung mendekati bahasa mesin yang hanya kenal 0 dan 1, maka muncul bahasa tingkat menengah yang menggunakan sebagian menggunakan simbol sebagian lagi menggunakan kata yang biasa digunakan manusia dalam hal ini bahasa inggris, seperti bahasa C yang menggunakan simbol “{” dan “}” sebagai awal dan akhir blok pernyataan dan kata “if” untuk pengkondisian. Berikutnya bahasa tingkat tinggi yang cenderung lebih mudah dipahami oleh manusia karena mendekati syntak dari bahasa inggris, seperti Pascal dimana strukturnya menurut beberapa literatur sebagai bahasa pemrograman terstruktur yang terbaik bahkan ada yang mengatakan bahasa Pascal bahasanya mahasiswa komputer. Kesemua bahasa pemrograman tersebut memfokuskan pada blok pernyataan baik dalam bentuk program utama, procedure atau function.

Pemrograman Visual- Visual Programming

Ketika pertama kali melihat program Visual, waktu itu tahun 1994 saat saya kuliah di Semester 5 S1 Teknik Informatika ST.INTEN Bandung, Microsoft Visual Basic yang tapaknya membuat program begitu menyenangkan dan mudah, padahal waktu itu ketika saya masih menggunakan Turbo Pascal 5.5 misalnya untuk membuat menu maka saya butuh puluhan baris untuk membuat menu fulldown tapi dengan Visual Basic tanpa mengetikan barisan program menu sudah jadi begitu mudahnya, tapi saya agak kesulitan karena Visual Basic menggunakan bahasa basic sedangkan saya terbiasa dengan pascal tapi untung pada tahun yang sama muncul Borland Delphi Versi 1.0 sebagai pemrograman Visual berbasis Pascal sehingga saya mulai mempelajari Borland Delphi sebagai bahasa pemrograman Visual. Borland pada waktu itu sebenarnya tidak hanya memproduksi Delphi saja tapi memproduksi C Builder, C++ Builder, J Builder dan beberapa varian pemrograman Visual. Kemudahan dalam pemrograman visual adalah penutupan atau penyembunyian hal-hal yang bersifat rumit dimana seperti hal namanya “Program Visual”,program ini memanjakan programmer dengan hal-hal yang bersifat visual atau tampilan dengan berbasis pada Graphics User Interface. Dimana programmer mengendalikan komponen-komponen yang telah disediakan oleh perangkat lunak sedangkan hal-hal yang rumit disembunyikan. Disinilah programer dimanjakan oleh program yang menuntunnya untuk membuat program, mulai dari program yang sederhana sampai dengan yang rumit, dari yang harus berpikir keras sampai dengan cara tukang sulap.

VP = OOP ?

Visual Programming dan OOP adalah sesuatu yang dekat dengan para programmer pada saat ini (2008), hanya Visual Programming merupakan perangkat atau pengimplementasian dari OOP, karena semua Visual Programming yang berfokus pada visual/tampilan grafik menggunakan paradigma berorientasi objek, dimana semua komponen dianggap sebagai objek, tetapi tidak semua OOP seperti Visual Programming, seperti Java dan C++ yang berbasis teks editor. Contoh komponen Button dikendalikan dengan mengelola “Properties” dan “Event”nya. Komponen-komponen tersebut dapat di turunkan menjadi komponen yang lain dalam satu “class” menjadi objek lain, Contoh Button berbentuk kotak menjadi berbentuk lingkaran.

Pemrograman Berorentasi Objek- Object-Oriented Programming

Pemrograman berorientasi objek sebenarnya telah berkembang sejak tahun 1962 dengan SIMULA dengan berpatokan bahwa objek adalah simulasi, sedangkan tekniknya menggunakan Classes, inhetance, polymorphisme, dan Virtual functions. Pemrograman ini berorientasi yang membungkus data dan fungsi dalam bentuk Class dan Objek, dimana mereka dapat saling berkirim, menerima, dan memproses pesan/data antar objek. Model data berorientasi objek dikatakan dapat memberikan fleksibilitas yang lebih, kemudahan mengubah program, dan digunakan secara luas dalam teknik piranti lunak skala besar. Lebih jauh lagi, pendukung OOP mengklaim bahwa OOP lebih mudah dipelajari bagi pemula dibanding dengan pendekatan sebelumnya, dan pendekatan OOP lebih mudah dikembangkan dan dirawat.

Bahasa yang berbasis OOP diantaranya : Java, C++, Pascal (bahasa pemrograman), Visual Basic.NET, SIMULA, Smalltalk, Ruby, Python, PHP, C#, Delphi, Eiffel, dan Perl.

Konsep dari OOP sebenarnya menirukan kehidupan nyata, dimana semuanya adalah objek.

Objek = Data + Metode

Data
• Analogikan sebagai Variabel atau Konstanta
• Karakteristik dari objek

Metode
• Function/Procedure
• Aksi Terhadap Data

Konsep OOP pada umumnya mendukung hal sebagai berikut :

  1. Class, pengklasifikasian terhadap definisi data dan fungsi untuk tujuan tertentu. Jadi beberapa objek dapat klasifikasikan dalam suatu nama class seperti Class dari Kipas dapat terdiri dari KipasBerdiri dan KipasDuduk.
  2. Objek, pembungkusan data dan fungsi secara bersama dalam blok pernyataan atau perintah dalam suatu program komputer, contoh objek KipasBerdiri dan KipasDuduk.
  3. Inheritance, pewarisan yang dapat digunakan untuk membuat class baru dari sebuah class
  4. Encapsulation, suatu upaya untuk menyembunyikan informasi dimana dilakukan penggabungan data dan metode menjadi suatu class
  5. Polimorphisme, merupakan dua kelas yang diturunkan dari satu kelas mempunyai metode sama tetapi implementasinya berbeda

Contoh dalam Java (disesuaikan dengan pesenan):
Kipas class
int putaran = 1;
int kecepatan = 0;
void PerubahanPutaran (int arah) {
putaran = arah;
}}
void Naikankecepatan (int peningkatan){
kecepatan = kecepatan + peningkatan;
}}
void penurunankecepatan(int pengurangan) {
kecepatan = kecepatan – pengurangan;
}}
void cekstatus() {
System.out.println ( “Putaran :” + putaran + “Kecepatan:” + kecepatan);
}}

public static void main(String[] args){
Kipas kipas1 = new Kipas()
Kipas kipas2 = new Kipas();
Kipas1.PerubahanPutaran(-1);
Kipas1.Naikankecepatan(2);
Kipas1.cekstatus();
Kipas2.PerubahanPutaran(1);
Kipas2.Naikankecepatan(3);
Kipas2.cekstatus();
}}

Ada sesuatu hal yang berbeda dalam pandangan penulis tentang penerjemahan Class menjadi kelas seperti yang banyak ditulis dibeberapa materi tentang OOP, penulis menganggap bahwa “Class” tidak perlu diterjemahkan kedalam kelas karena kan mengakibatkan hal yang membingungkan dalam pemahaman OOP mengenai “Class” ini, sama halnya dengan dalam perancangan berorientasi objek yaitu Use-case tidak perlu diterjenahkan menjadi penggunaan kasus, sehingga menjadi rancu atau menjadi samar untuk langkah berikutnya, karena sebenarnya tidak perlu semuanya diterjemahkan seperti Newton tentu tidak usah diterjemahkan dalam “Ton Baru” atau Java Programming tidak menjadi pemrograman jawa.

n

Tentang Agus Suheri

Staf Pengajar AKAP 3 PTS 3 Kota 2 Provinsi Alamat Tinggal di 3 Rumah 1 Kota, Bandung Jawa Barat Banten
Pos ini dipublikasikan di Tugas Kuliah. Tandai permalink.

Tinggalkan komentar