Pengertian dan Konsep Pemrograman Berorientasi Objek - Pemrograman berorientasi objek mulai dibicarakan sekitar akhir tahun 60’an. Pertama kali diperkenalkan oleh Ole Johan Dhal dan Kristen Nygaard dari Universitas Oslo, Norwegia pada tahun 1966 dalam jurnal dengan judul “SIMULA An Algol Based Simulation Language”. Jadi OOP bukan hal baru.
Pada tahun 1970 bahasa SMALTALK dikembangkan oleh XEROX PARC. Pada saat itu sebagian dari dunia menggunaan COBOL dan FORTRAN dengan metode dekomposisi dan fungsional. Perubahan terjadi selama beberapa dekade sampai dikenalnya faktor utama berorientasi objek, yaitu :
Konsep dasar berorientasi objek, konsep berorientasi objek mulai populer dimana memulai analisis dan disain menjadi lebih diperhatikan daripada coding.
1. Buatlah program dengan menggunakan Netbean
2. Buatlah program dengan Netbean
Tampilan
3. Buatlah program dengan menggunakan konsep objek oriented pada gambar dibawah ini:
Sekian artikel tentang Pengertian dan Konsep Pemrograman Berorientasi Objek.
Pada tahun 1970 bahasa SMALTALK dikembangkan oleh XEROX PARC. Pada saat itu sebagian dari dunia menggunaan COBOL dan FORTRAN dengan metode dekomposisi dan fungsional. Perubahan terjadi selama beberapa dekade sampai dikenalnya faktor utama berorientasi objek, yaitu :
Konsep dasar berorientasi objek, konsep berorientasi objek mulai populer dimana memulai analisis dan disain menjadi lebih diperhatikan daripada coding.
image source: generalassemb.ly |
Teknologi dasar pengembangan sistem, coding sangat dipengaruhi oleh bahasa pemrograman yan tersedia. Untuk pengembangan program terstruktur lebih mudah dikembangkan dengan pascal, atau C, dan pembuatan coding berorientasi objek akan lebih mudah dikembangkan dengan bahasa pemrograman C++, JAVA, VB.Net, PHP.
Kondisi sistem, sistem yang dibagun saat ini berbeda dengan sistem beberapa tahun yang lalu. Sistem yang sekarang lebih besar, kompleks dan dapat juga merupakan sistem yang interaktif. Pendekatan berorientasi objek merupakan cara yang lebih tepat untuk sistem yang berorientasi objek.
Pengenalan model, banyak organisasi mendapatkan bahwa sistem yang dibagngun pada saat ini cendrung berorientasi data dari pada sistem yang dibagun sekitar tahun 1970 dan 1980. pada waktu itu penggunaan model telah mendapatkan prioritas lebih besar dibandingkan dengan kompleksitas fungsional.
Pengembangan Berorientasi Objek
Pengembangan berorientasi objek merupakan cara berpikir baru tantang perangkat lunak berdasarkan abstraksi alam dunia nyata.
Hal yang lebih penting dalam pengembangan berorientasi objek adalah konsep mengidentifikasi objek dan mengorganisasi domain aplikasi dibandingkan dengan fokus penggunaan bahasa pemrograman berorientasi objek atau tidak.
Abtraksi
Abstraksi suatu cara melihat suatu objek dalam bentuk yang lebih sederhana, contoh:
Bila kita melihat sebuah mobil bukan sebagai sebuah kumpulan atau ribuan komponen elektronik , mekanik dengan empat buah ban, besi, jok stir dan sebagaiya.
Walau kenyataanya demikian namum kita melihat mobil sebagai si dngle entity yang merupakan suatu objek yang mempunyai sifat dan karakteristik tersendiri.
Kita tidak perlu tahu bagaimana kompleknya mobil itu, tidak perlu tahu bagaimana cara bekerja mesin, dll. Kita tidak meihat bagian-bagian dalam sebuah mobil sebagai suatu bagian yang berdiri sendiri-sendiri, tetapi sebagai satu kesatuan.
Dengan abstraksi kita melihat suatu sistem yang komplek sebagai kumpulan subsistem-subsistem yang lebih sederhana, seperti halnya mobil merupakan suatu sistem yang terdiri atas subsistem-subsistem
Elemen dalam sebuah Objek
Setiap objek selalu memiliki keadaan (State) dan behaviour yang dapat mengubah state tersebut.
Contoh: Manusia memiliki state umur, tinggi, berat, dll. Demikian pula behaviour yang dimiliki manusia seperti makan, tidur, bekerja, dll.
Behaviour ini dapat mengubah atau tidak sama sekali state yang dimiliki oleh suatu objek.
Dalam bahasa Java state akan lebih dikenal dengan nama properties atau field, sedangkan behavioir akan dikenal dengan nama method.
Konsep Berorientasi Objek ( Encapsulation, Inheritance, Polymorphism)
Enkapuslasi adalah satu mekanisme untuk menyembunyikan atau memproteksi suatu proses dari kemungkinan interfensi atau penyalahgunaan dari luar sistem dan sekaligus menyederhanakan sistem itu sendiri, akses ke internal sistem diatur sedemikian rupa melalui seperangkat interface.
Contoh :
Seperti mobil sistem transmisi didalam mobil, sistem transmisi ini menyembunyikan dari anda bagaimana cara ia bekerja. Anda sebagai pengguna hanya cukup memindahkan tongkat transimis untuk mendapat percepatan yang anda inginkan. Tongkat transmisi inilah yang satu-satunya yang menjadi interface dalam mengatur transmisi dalam mobil tersebut. Kita tidak bisa menggunakan pedal rem untuk mengakses sistem transmisi tersebut, konsep yang sama dapat diterapkan dalam pemrograman.
Inheritance (Pewarisan)
Kita sebenarnya terbiasa melihat objek tesusun secara hierarki berdasarkan calss-nya masing-masing. Dari sini muncul konsep tentang pewarisan yang merupakan suatu proses dimana suatu class diturunkan dari class lainnya sehingga ia mendapatkan ciri atau sifat dari class tersebut
Contoh Hirarki pewarisan class
Polymorphism
Polymorphism berasal dari bahasa yunani yang berarti banyak bentuk. Dalam OOP konsep ini memungkinkan digunakannya suatu interface yang sama untuk memerintahkan suatu objek agar melaksanakan suatu aksi atau tindakan yang mungkin secara prinsip sama tetapi secara proses berbeda.
Contoh yang konkrit kembali ke masalah mobil, mobil yang ada dipasaran terdiri atas beberapa tipe dan merek, namun semunya memiliki interface kemudi yang sama, seperti stir, pedal gas dan rem.
Harus diperhatikan bahwa interface yang sama tidak berarti cara kerjanya juga sama. Contoh bila anda menekan pedal gas maka mobil akan melaju cepat tetapi bagaimana proses ini terjadi dapat berbeda-beda untuk setiap jenis mobil.
Dengan menggunakan interface yang sama anda akan mendapatkan hasil yang sama, tetapi bagaimana proses yang terjadi dari aksi menjadi hasil mungkin saja berbeda.
Konsep dari Class dan Objek
Objek adalah kesatuan entitas (benda), baik yang berwujud nyata ataupun hanya suatu sistem atau konsep yang memiliki sifat karakteristik dan fungsi, contoh:
Class adalah pemodelan dari objek yang berisi informasi (aturan) tentang sifat karakteristik (data) dan tingkah laku (method yang dimiliki oleh objek tersebut).
Hubungan antara class dan objek dapat diilustrasikan sebagai resep kue dengan kuenya, dimana resep kue adalah class dan kue adalah objeknya.
Cat: Metode (method) disebut juga service atau operator adalah prosedur atau fungsi seperti yang terdapat pada bahasa pascal, tetapi cara kerjanya agak berlainan. Method adalah sub program yang tergabung dalam objek bersama-sama dengan atribut. Method digunakan untuk pengaksesan terhadap data yang terdapat dalam objek tersebut
Atribut menggambarkan data yang dapat memberikan informasi dengan class atau objek dimana atribut tersebut berada.
Contoh Latihan
Latihan Kondisi sistem, sistem yang dibagun saat ini berbeda dengan sistem beberapa tahun yang lalu. Sistem yang sekarang lebih besar, kompleks dan dapat juga merupakan sistem yang interaktif. Pendekatan berorientasi objek merupakan cara yang lebih tepat untuk sistem yang berorientasi objek.
Pengenalan model, banyak organisasi mendapatkan bahwa sistem yang dibagngun pada saat ini cendrung berorientasi data dari pada sistem yang dibagun sekitar tahun 1970 dan 1980. pada waktu itu penggunaan model telah mendapatkan prioritas lebih besar dibandingkan dengan kompleksitas fungsional.
Pengembangan Berorientasi Objek
Pengembangan berorientasi objek merupakan cara berpikir baru tantang perangkat lunak berdasarkan abstraksi alam dunia nyata.
Hal yang lebih penting dalam pengembangan berorientasi objek adalah konsep mengidentifikasi objek dan mengorganisasi domain aplikasi dibandingkan dengan fokus penggunaan bahasa pemrograman berorientasi objek atau tidak.
Abtraksi
Abstraksi suatu cara melihat suatu objek dalam bentuk yang lebih sederhana, contoh:
Bila kita melihat sebuah mobil bukan sebagai sebuah kumpulan atau ribuan komponen elektronik , mekanik dengan empat buah ban, besi, jok stir dan sebagaiya.
Walau kenyataanya demikian namum kita melihat mobil sebagai si dngle entity yang merupakan suatu objek yang mempunyai sifat dan karakteristik tersendiri.
Kita tidak perlu tahu bagaimana kompleknya mobil itu, tidak perlu tahu bagaimana cara bekerja mesin, dll. Kita tidak meihat bagian-bagian dalam sebuah mobil sebagai suatu bagian yang berdiri sendiri-sendiri, tetapi sebagai satu kesatuan.
Dengan abstraksi kita melihat suatu sistem yang komplek sebagai kumpulan subsistem-subsistem yang lebih sederhana, seperti halnya mobil merupakan suatu sistem yang terdiri atas subsistem-subsistem
Elemen dalam sebuah Objek
Setiap objek selalu memiliki keadaan (State) dan behaviour yang dapat mengubah state tersebut.
Contoh: Manusia memiliki state umur, tinggi, berat, dll. Demikian pula behaviour yang dimiliki manusia seperti makan, tidur, bekerja, dll.
Behaviour ini dapat mengubah atau tidak sama sekali state yang dimiliki oleh suatu objek.
Dalam bahasa Java state akan lebih dikenal dengan nama properties atau field, sedangkan behavioir akan dikenal dengan nama method.
Konsep Berorientasi Objek ( Encapsulation, Inheritance, Polymorphism)
Enkapuslasi adalah satu mekanisme untuk menyembunyikan atau memproteksi suatu proses dari kemungkinan interfensi atau penyalahgunaan dari luar sistem dan sekaligus menyederhanakan sistem itu sendiri, akses ke internal sistem diatur sedemikian rupa melalui seperangkat interface.
Contoh :
Seperti mobil sistem transmisi didalam mobil, sistem transmisi ini menyembunyikan dari anda bagaimana cara ia bekerja. Anda sebagai pengguna hanya cukup memindahkan tongkat transimis untuk mendapat percepatan yang anda inginkan. Tongkat transmisi inilah yang satu-satunya yang menjadi interface dalam mengatur transmisi dalam mobil tersebut. Kita tidak bisa menggunakan pedal rem untuk mengakses sistem transmisi tersebut, konsep yang sama dapat diterapkan dalam pemrograman.
Inheritance (Pewarisan)
Kita sebenarnya terbiasa melihat objek tesusun secara hierarki berdasarkan calss-nya masing-masing. Dari sini muncul konsep tentang pewarisan yang merupakan suatu proses dimana suatu class diturunkan dari class lainnya sehingga ia mendapatkan ciri atau sifat dari class tersebut
Contoh Hirarki pewarisan class
Gambar 1.1. Hirarki Class |
Polymorphism berasal dari bahasa yunani yang berarti banyak bentuk. Dalam OOP konsep ini memungkinkan digunakannya suatu interface yang sama untuk memerintahkan suatu objek agar melaksanakan suatu aksi atau tindakan yang mungkin secara prinsip sama tetapi secara proses berbeda.
Contoh yang konkrit kembali ke masalah mobil, mobil yang ada dipasaran terdiri atas beberapa tipe dan merek, namun semunya memiliki interface kemudi yang sama, seperti stir, pedal gas dan rem.
Harus diperhatikan bahwa interface yang sama tidak berarti cara kerjanya juga sama. Contoh bila anda menekan pedal gas maka mobil akan melaju cepat tetapi bagaimana proses ini terjadi dapat berbeda-beda untuk setiap jenis mobil.
Dengan menggunakan interface yang sama anda akan mendapatkan hasil yang sama, tetapi bagaimana proses yang terjadi dari aksi menjadi hasil mungkin saja berbeda.
Konsep dari Class dan Objek
Objek adalah kesatuan entitas (benda), baik yang berwujud nyata ataupun hanya suatu sistem atau konsep yang memiliki sifat karakteristik dan fungsi, contoh:
Hubungan antara class dan objek dapat diilustrasikan sebagai resep kue dengan kuenya, dimana resep kue adalah class dan kue adalah objeknya.
Cat: Metode (method) disebut juga service atau operator adalah prosedur atau fungsi seperti yang terdapat pada bahasa pascal, tetapi cara kerjanya agak berlainan. Method adalah sub program yang tergabung dalam objek bersama-sama dengan atribut. Method digunakan untuk pengaksesan terhadap data yang terdapat dalam objek tersebut
Atribut menggambarkan data yang dapat memberikan informasi dengan class atau objek dimana atribut tersebut berada.
Contoh Latihan
segitiga.java
public class segitiga{
int alas,tinggi;
double luas;
public segitiga(){
this.alas=0;
this.tinggi=0;
}
public double cariLuas(){
return alas*tinggi/2;
}
public void setAlas(int alas){
this.alas=alas;
}
public void setTinggi(int tinggi)
{
this.tinggi=tinggi;
}
}
1. Buatlah program dengan menggunakan Netbean
Public class Latihan{Tampilan
Public static void main(String [] args){
System.out.println("Selamat datang");
System.out.println("Apa kabar saya Java");
System.out.println("James Gosling");
Tampilan
3. Buatlah program dengan menggunakan konsep objek oriented pada gambar dibawah ini:
Pengertian dan Konsep Pemrograman Berorientasi Objek
4/
5
Oleh
Unknown