Pengertian Pemrograman Berorientasi Objek
Pemrograman Berorientasi Objek atau Object Oriented Programming (OOP) adalah sebuah tata cara pembuatan program (programming paradigm) dengan menggunakan konsep “objek” yang memiliki data (atribut yang menjelaskan tentang objek) dan prosedur (function) yang dikenal dengan method. (http://en.wikipedia.org/wiki/Object-oriented_programming)
Dalam pengertian sederhananya, OOP adalah konsep pembuatan program dengan memecah permasalahan program dengan menggunakan objek. Objek dapat diumpamakan dengan ‘fungsi khusus’ yang bisa berdiri sendiri. Untuk membuat sebuah aplikasi, berbagai objek akan saling bertukar data untuk mencapai hasil akhir.
Berbeda dengan konsep fungsi atau ‘function’ di dalam pemrograman, sebuah objek bisa memiliki data dan function tersendiri. Setiap objek ditujukan untuk mengerjakan sebuah tugas, dan menghasilkan nilai akhir untuk selanjutnya dapat ditampilkan atau digunakan oleh objek lain.
Fungsi Pemrograman Berorientasi Objek dalam PHP
PHP bukan bahasa pemrograman yang ‘murni’ berbasis objek seperti Java. Bahkan, konsep OOP dalam PHP baru hadir dalam PHP versi 4, dan disempurnakan oleh PHP versi 5. Dengan kata lain,OOP di PHP merupakan ‘fitur tambahan’. Anda bisa membuat situs web dengan PHP tanpa menggunakan objek sama sekali.
Dalam studi pemrograman, pembuatan program dalam PHP tanpa menggunakan objek disebut juga dengan pemrograman prosedural atau pemrograman fungsional. Dikenal dengan pemrograman prosedural, karena kita memecah kode program menjadi bagian-bagian atau fungsi-fungsi kecil, kemudian menyatukannya untuk menghasilkan nilai akhir.
Dengan membuat program secara prosedural, aplikasi bisa dibuat dengan cepat dan mudah dipelajari jika dibandingkan dengan pemrograman berbasis objek (bagi anda yang pernah mempelajari Java, tentu telah ‘melewati’ hal ini). Keuntungan pemrograman berbasis objek baru terasa ketika program tersebut telah ‘besar’ atau kita bekerja dengan tim untuk membagi tugas. Konsep ‘objek’ untuk memisahkan program menjadi bagian-bagian yang berdiri sendiri akan memudahkan dalam membuat program.
Saya tidak akan panjang lebar menjelaskan tentang keuntungan atau kerugian menggunakan OOP. Sebagai programmer web, OOP adalah salah satu makanan wajib. Pembuatan website modern saat ini akan lebih mudah jika menggunakan template kode program yang dikenal dengan framework. Daripada kita membuat situs mulai dari awal, menggunakan framework akan mempercepat proses kerja. Dan framework PHP hampir semuanya dibuat menggunakan OOP.
Pemrograman berbasis objek tidak hanya berisi ‘object’. Selanjutnya kita akan belajar OOP PHP, dan pertama kita akan membahas tentang pengertian class, object, property dan method. Keempat ‘keyword’ inilah yang menjadi pondasi dasar dari Pemrograman Berorientasi Objek. Selain pengertian, kita juga akan mempelajari cara penulisannya dengan PHP.
Pemrograman berbasis objek tidak hanya berisi ‘object’. Selanjutnya kita akan belajar OOP PHP, dan pertama kita akan membahas tentang pengertian class, object, property dan method. Keempat ‘keyword’ inilah yang menjadi pondasi dasar dari Pemrograman Berorientasi Objek. Selain pengertian, kita juga akan mempelajari cara penulisannya dengan PHP.
Untuk memudahkan pemahaman dan agar sejalan dengan istilah aslinya, saya tetap menggunakan istilah bahasa inggris untuk kata kunci PHP, seperti: class, object, property dan method.
Pengertian Class dalam Pemrograman Berbasis Objek
Class adalah ‘cetak biru’ atau ‘blueprint’ dari object. Class digunakan hanya untuk membuat kerangka dasar. Yang akan kita pakai nantinya adalah hasil cetakan dari class, yakni object.
Sebagai analogi, class bisa diibaratkan dengan laptop atau notebook. Kita tahu bahwa laptop memiliki ciri-ciri seperti merk, memiliki keyboard, memiliki processor, dan beberapa ciri khas lain yang menyatakan sebuah benda tersebut adalah laptop. Selain memiliki ciri-ciri, sebuah laptop juga bisa dikenakan tindakan, seperti: menghidupkan laptop atau mematikan laptop.
Class dalam analogi ini adalah gambaran umum tentang sebuah benda. Di dalam pemrograman nantinya, contoh class seperti: koneksi_database dan profile_user.
Di dalam PHP, penulisan class diawali dengan keyword class, kemudian diikuti dengan nama dari class. Aturan penulisan nama class sama seperti aturan penulisan variabel dalam PHP, yakni diawali dengan huruf atau underscore untuk karakter pertama, kemudian boleh diikuti dengan huruf, underscore atau angka untuk karakter kedua dan selanjutnya. Isi dari class berada dalam tanda kurung kurawal.
Berikut adalah contoh penulisan class dalam PHP :
Pengertian Property dalam Pemrograman Berorientasi Objek
Property (atau disebut juga dengan atribut) adalah data yang terdapat dalam sebuah class. Melanjutkan analogi tentang laptop, property dari laptop bisa berupa merk, warna, jenis processor, ukuran layar, dan lain-lain.
Jika anda sudah terbiasa dengan program PHP, property ini sebenarnya hanyalah variabel yang terletak di dalam class. Seluruh aturan dan tipe data yang biasa diinput kedalam variabel, bisa juga diinput kedalam property. Aturan tata cara penamaan property sama dengan aturan penamaan variabel.
Berikut adalah contoh penulisan class dengan penambahan property :
Berikut adalah contoh penulisan class dengan penambahan property :
Dari contoh diatas, $merk, $ukuran_layar dan $jenis_processor adalah property dari class laptop. Seperti yang kita lihat, penulisan property di dalam PHP sama dengan cara penulisan variabel, yakni menggunakan tanda dollar ($). Sebuah class tidak harus memiliki property.
Pengertian Method dalam Pemrograman Berorientasi Objek
Method adalah tindakan yang bisa dilakukan didalam class. Jika menggunakan analogi class laptop kita, maka contoh method adalah: menghidupkan laptop, mematikan laptop, mengganti cover laptop, dan berbagai tindakan lain.
Method pada dasarnya adalah function yang berada di dalam class. Seluruh fungsi dan sifat function bisa diterapkan kedalam method, seperti argumen/parameter, mengembalikan nilai (dengan keyword return), dan lain-lain.
Berikut adalah contoh penulisan class dengan penambahan method :
Berikut adalah contoh penulisan class dengan penambahan method :
Dari contoh diatas, function hidupkan_laptop() dan function matikan_laptop() adalah method dari class laptop. Seperti yang kita lihat, bahwa penulisan method di dalam PHP sama dengan cara penulisan function. Sebuah class tidak harus memiliki method.
Pengertian Object dalam Pemrograman Berbasis Objek
Object atau Objek adalah hasil cetak dari class, atau hasil ‘konkrit’ dari class. Jika menggunakan analogi class laptop, maka objek dari class laptop bisa berupa: laptop_andi, laptop_anto, laptop_yukcoding, dan lain-lain. Objek dari class laptop akan memiliki seluruh ciri-ciri laptop, yaitu property dan method-nya.
Proses ‘mencetak’ objek dari class ini disebut dengan ‘instansiasi’ (atau instantiation dalam bahasa inggris). Pada PHP, proses instansiasi dilakukan dengan menggunakan keyword ‘new’. Hasil cetakan class akan disimpan dalam variabel untuk selanjutnya digunakan dalam proses program.
Sebagai contoh, berikut adalah cara membuat objek laptop_andi dan laptop_anto yang dibuat dari class laptop :
Dari contoh diatas, $laptop_andi dan $laptop_anto merupakan objek dari class laptop. Kedua objek ini akan memiliki seluruh property dan method yang telah dirancang dari class laptop.
Saya berharap kalian sudah punya gambaran dan faham tentang konsep pemrograman berorientasi objek.
Contoh implementasi pembuatan aplikasi OOP dengan PHP :
Semoga bermanfaat, happy coding :)
16 komentar
masih susah paham soal oop -_-
Ane pertamanya juga susah gan, ane mulai faham OOP juga baru kok itungannya, dan ini juga masih terus belajar. Dibaca2 lagi dan coba cari referensi yg banyak mas, Insyallah suatu saat akan ada pencerahan :D
thanks gan!
Y're welcome :)
Assalamualaikum... terima kasih atas explanation yang diberikan. Sungguh jelas dan saya lebih faham CRUD OOP. Terima kasih dari saya. Semoga tuan dapat lahirkan lebih ramai expert2 OOP PHP ini.
Wa'alaikumsalam wr. wb.
Sama2, Amin.
Thanks :)
assalamulaikum terimakasih ilmunya....
kebetulan walaupun saya jualan kaos online big size tapi kebetulan tertarik dengan dunia programming oop. Alhamdulillah postingan ini membantu saya mempelajari konsep OOP
Wa'alaikumsalam wr. wb.
Sama2, Alhamdulillah :)
gampang2 susah belajar OOP..
Iya gan. Sering praktek saja :)
Terima kasih, mudah dipahami Gan.
Sama2. Alhamdulillah :)
Ada juga yang penjelasannya mudah dimengerti
Dimana gan?
Berkomentarlah dengan bahasa yang relevan dan sopan.. #ThinkHIGH! ^_^