Dalam
dunia pemrograman, ada dua jenis metode pemrograman,
yaitu Pemrograman Prosedural (Procedural) dan Pemrograman Berorientasi Objek (PBO)/ Object Oriented Program (OOP).
Pemrograman
prosedural merupakan suatu metode menulis program yang didasarkan pada
"serangkaian tugas yang diselesaikan dalam bentuk fungsi atau
prosedur". Cara pandang pemrograman prosedural yaitu sebuah
program adalah suatu urutan instruksi. Programmer harus mem-break down suatu
problem/masalah menjadi sub problem yang lebih sederhana. Fokus utama metode
prosedural ini adalah fungsi dan prosedur, dimana keduanya digunakan untuk
memanipulasi data. Dalam hal ini data bersifat pasif. Contoh : Linux
yang menggunakan bahasa C, atau Windows yang menggunakan bahasa Assembler.
Lain
halnya dengan pemrograman berorientasi objek (OOP), fungsi dan data bukan
menjadi dua hal yang terpisah. Fungsi dan data menjadi satu kesatuan yang
disebut sebagai objek aktif. Cara pandang OOP ini yaitu sebuah program
merupakan serangkaian objek yang bekerjasama untuk menyelesaikan suatu
problem.
Dengan kata lain, metode prosedural berfokus
pada cara komputer menangani tugas, sedangkan metode OOP berfokus pada tugas
yang kita kembangkan untuk dieksekusi komputer. Kedua jenis metode pemrograman
tersebut dapat digunakan untuk menangani masalah yang sama, asalkan bahasa
pemrograman yang digunakan mendukung metode-metode tersebut. Contoh bahasa
pemrograman yang mendukung OOP diantaranya : Java, C++, Pascal, Visual Basic
.NET, Ruby, Python, PHP, C#, Delphi, Perl, dsb.
OOP memiliki karakteristik sbb :
1. Abstraksi/ Abstraction.
Abstraction merupakan cara kita melihat suatu sistem dalam
bentuk yang lebih sederhana, yaitu sebagai suatu kumpulan subsistem
(object) yang berhubungan.
2. Pembungkusan/ Encapsulation.
Encapsulation suatu mekanisme menyembunyikan suatu proses dalam
sistem untuk menghindari interferensi dan menyederhanakan penggunaan
sistem itu sendiri.
3. Pewarisan/ Inheritence
Inheritance merupakan suatu Class yang dapat mewariskan Attribut dan method kepada class lain (subclass), serta membentuk class hierarchy.
4. Polimorfisme/ Banyak Rupa (Polymorphism)
Dalam java, method/ cara melakukan operasi sistem ini dapat dipakai fungsi-fungsi utamanya dan dapat juga dibuat atau dikembangkan sendiri.
Pengertian Java
Java
adalah bahasa pemrograman yang multi platform dan multi device. Sekali menuliskan sebuah program dengan menggunakan Java, anda dapat menjalankannya
hampir di semua komputer dan perangkat lain yang support Java, dengan sedikit
perubahan atau tanpa perubahan sama sekali dalam kodenya. Aplikasi dengan
berbasis Java ini dikompulasikan ke dalam p-code dan bisa dijalankan dengan
Java Virtual Machine. Fungsionalitas dari Java ini dapat berjalan dengan
platform yang berbeda karena sifatnya yang umum dan non-spesifik.
Slogan
Java adalah “Tulis sekali, jalankan di manapun”. Sekarang ini Java menjadi
sebuah bahasa pemrograman yang populer dan dimanfaatkan secara luas untuk
pengembangan perangkat lunak. Kebanyakan perangkat lunak yang menggunakan Java adalah
ponsel feature dan ponsel pintar atau smartphone. Dalam penggunaan penulisan Java bersifat case sensitif.
Kelebihan dan kekurangan Java
Kelebihan Java yang pertama tentu saja multiplatform. Java dapat
dijalankan dalam beberapa platform komputer dan sistem operasi yang berbeda.
Hal ini sesuai dengan slogannya yangs udah dibahas sebelumnya. Yang kedua
adalah OOP atau Object Oriented Programming. Java memiliki library yang lengkap.
Library disini adalah sebuah kumpulan dari program yang disertakan dalam Java.
Hal ini akan memudahkan pemrograman menjadi lebih mudah. Kelengkapan library
semakin beragam jika ditambah dengan karya komunitas Java.
Setiap
hal pasti memiliki kelebihan dan kekurangan. Kekurangan yang dimiliki oleh Java
adalah pada satu slogannya, takni “Tulis sekali dan jalankan dimana saja”
ternyata tidak sepenuhnya benar. Beberapa hal harus disesuaikan jika dijalankan
pada platform yang berbeda. Misalnya untuk J2SE dengan platform SWT-AWT bridge
tidak dapat berfungsi di Mac OS X. Kekurangan lainnya adalah kemudahan aplikasi
Java didekompilasi. Dekompilasi adalah suatu proses membalikkan sebuah aplikasi
menjadi kode sumbernya. Hal ini memungkinkan terjadi pada Java karena berupa
bytecode yang menyimpan bahasa tingkat tinggi. Hal ini terjadi pula pada
platform .NET dari Microsoft sehingga program yang dihasilkan mudah dibajak
kodenya karena sulit untuk disembunyikan.
Kekurangan
Java yang lain adalah penggunaan memori
yang cukup banyak, lebih besar daripada bahasa tingkat tinggi sebelum generasi
Java. Namun hal ini memang sesuai dengan fitur beragam yang dimiliki oleh Java.
Masalah memori ini juga tidak dialami oleh semua pengguna aplikasi Java. Mereka
yang sudah menggunakan perangkat keras dengan teknologi terbaru tidak merasakan
kelambatan dan konsumsi memori Java yang tinggi. Lain halnya dengan mereka yang
menggunakan teknologi lama/komputer yang sudah berumur tua lebih dari empat tahun akan merasakan adanya kelambatan.
Namun apapun kelemahan yang dimiliki Java, faktanya adalah Java merupakan
bahasa pemrograman yang populer dan digunakan di seluruh dunia saat ini.
Bagian - Bagian dari Java :
1. Class, adalah wadah yang berisi kumpulan data, atribut, atau method dari suatu variabel/blue printnya. Fungsi class dipisah untuk memudahkan apabila ada perubahan dalam program tersebut, tidak merubah datanya secara keseluruhan, pemecahannya cukup sesuai dengan kebutuhan. Contoh ;
public class handphone {
StringmerkHP= "Blackberry",
jenisHP= "8330",
warnaHP= "Hitam",
}
2. Method, adalah sebuah tindakan atau cara untuk mengintruksikan/ menjalankan suatu operasi. Operasi Method diantaranya, yaitu ;
a. Bisa menerima dan memanipulasi data/field dalam diri method tsb.
b. Bisa mempengaruhi nilai suatu object lain
Contoh ;
Class Buku {
double panjang;
double lebar;
}
3. Objek, adalah suatu data atau ukuran dan tingkah laku. di dalam Java rancangan sebuah objek ditulis dalam sebuah class dan diimplementasikan sebagai member variabel, sedangkan prosedur yang mengolah data tersebut diimplementasikan dalam method.
Resources/ Sumber :
- Wikipedia
- Slide Presentasi Konsep Pemrograman Berorientasi Objek (lecturer.eepis-its.edu/~riyanto/oop1.pdf)
- belajar-komputer-mu.com
- synagabonar.files.wordpress.com
- Modul Java - Nuri 2013