Selasa, 24 Oktober 2017

Pemrograman Berorientasi Objek

Pemrograman Berorientasi Objek

A. Pengertian OOP (Object Oriented Programming) 
OOP (Object Oriented Programming) adalah suatu metode pemrograman yang berorientasi kepada objek. Tujuan dari OOP diciptakan adalah untuk mempermudah pengembangan program dengan cara mengikuti model yang telah ada di kehidupan sehari-hari.
B. Konsep OOP (Object Oriented Programming) 
      1. Kelas Abstrak (Class Abstraksi)
      2. Enkapsulasi (encapsulation)
      3. Pewarisan (Inheritance)
      4. Polimorfisme (polymorphism)


1. Kelas Abstrak (Class Abstraksi)
·          
·         Kelas merupakan deskripsi abstrak informasi dan tingkah laku dari sekumpulan data.
·         Kelas dapat diilustrasikan sebagai suatu cetak biru(blueprint) atau prototipe yang   digunakan untuk menciptakan objek.
·        Kelas merupakan tipe data bagi objek yang mengenkapsulasi data dan operasi pada data dalam suatu unit tunggal.
·        Kelas mendefinisikan suatu struktur yang terdiri atas data kelas (data field), prosedur atau fungsi (method), dan sifat kelas (property).

2. Enkapsulasi (encapsulation)
·          
·                Istilah enkapsulasi sebenarnya adalah kombinasi data dan fungsionalitas dalam     sebuah unit tunggal sebagai bentuk untuk menyembunyikan detail informasi.
·        Proses enkapsulasi memudahkan kita untuk menggunakan sebuah objek dari suatu kelas karena kita tidak perlu mengetahui segala hal secara rinci.
·       Enkapsulasi menekankan pada antarmuka suatu kelas, atau dengan kata lain bagaimana menggunakan objek kelas tertentu.
·       Contoh: kelas mobil menyediakan antarmuka fungsi untuk menjalankan mobil tersebut, tanpa kita perlu tahu komposisi bahan bakar, udara dan kalor yang diperlukan untuk proses tersebut.

3. Pewarisan (Inheritance)
·          
·                Kita dapat mendefinisikan suatu kelas baru dengan mewarisi sifat dari kelas lain yang   sudah ada.
·         Dengan konsep pewarisan, seorang programmer dapat menggunakan kode yang telah   ditulisnya pada kelas super berulang kali pada kelas-kelas turunannya tanpa harus   menulis ulang semua kodekode itu.

4. Polimorfisme (polymorphism)
·          
·               Polimorfisme juga dapat dikatakan kemampuan sebuah objek untuk memutuskan method mana yang akan diterapkan padanya, tergantung letak objek tersebut pada jenjang pewarisan.  Method overriding. Method name overloading.

C. Karakteristik OOP (Object Oriented Programming) 
·        
              Semua adalah objek. Komputasi dilakukan dengan komunikasi antar objek. Setiap objek berkomunikasi dengan  objek yang lain melalui pengiriman dan penerimaan pesan. Setiap objek memiliki memori sendiri. Setiap objek adalah wakil atau representasi dari suatu kelas. Sebuah kelas dapat mewakili sekelompok objek yang sama.   Kelas merupakan kumpulan tingkah laku yang berkaitan dengan suatu objek. Kelas-kelas diorganisasikan ke dalam struktur pohon yang berakar tunggal, yang dinamakan dengan jenjang pewarisan (inheritance hierarchy). Setiap objek pada umumnya memiliki tiga sifat, yaitu keadaan, operasi dan  identitas objek. Keadaan objek merupakan koleksi dari seluruh informasi yang dimiliki  oleh objek pada suatu saat.