• Home
  • Berita
  • Mengenal OOP Adalah : Definisi, Konsep, Kelebihan dan Kekurangannya

Mengenal OOP Adalah : Definisi, Konsep, Kelebihan dan Kekurangannya

Oleh Mila Rosyida

Pernahkah kamu mendengar istilah OOP ? Mungkin tidak semua orang tahu mengenai istilah yang satu ini.

Istilah OOP biasanya digunakan oleh para pembuat program atau sering disebut dengan programmer.

Bagi seorang programmer, konsep OOP merupakan konsep yang basic atau konsep utama pada pemrograman.

Mengapa begitu? Karena selain banyak digunakan oleh programmer lain, konsep OOP ini membuat kode program yang dibuat menjadi lebih terstruktur, efisien, dan efektif.

Secara definisi, OOP adalah singkatan dari Object Oriented Programming, yakni suatu metode pemrograman yang orientasinya terletak pada objek. Buat kamu yang menekuni skill pemrograman pasti sudah familiar dengan istilah ini. Itu karena OOP adalah model pemrograman mendasar yang harus dikuasai.

Pasalnya, hampir semua developer atau programmer menggunakan OOP dalam setiap pekerjaan mereka. Jadi, penting buat kamu untuk memiliki pengetahuan yang cukup tentang Object Oriented Programming. Hal ini bermanfaat ketika kamu harus mengembangkan dan maintenance program software.

Nah, mengingat pentingnya model ini dalam dunia programming, maka artikel ini akan mengajak kamu untuk mengenali OOP lebih dekat dekat lagi. Mulai dari pengertian, konsep, hingga kelebihan dan kekurangannya.

Pengertian OOP

Pemrograman berorientasi objek atau Object Oriented Programming atau OOP adalah jenis pemrograman komputer di mana programmer mendefinisikan tipe data dari struktur data, dan juga jenis operasi (fungsi) yang dapat diterapkan pada struktur data.

Kemudian, struktur data ini yang nantinya akan menjadi objek yang meliputi data dan fungsi. 

Selain itu, programmer dapat menciptakan hubungan antar objek. Misalnya, karakteristik suatu objek dapat menurun dari objek lain.

Definisi lain dari OOP adalah konsep pada pemrograman dengan mengidentifikasi kelas objek yang terkait erat dengan metode yang digunakan. 

OOP menawarkan potensi untuk mengembangkan pemrograman ke tingkat abstraksi yang lebih tinggi. Oleh sebab itulah, OOP adalah model pemrograman terpopuler untuk membuat kode untuk sebagian besar karir pendidikan programmer. 

Selain itu, konsep Object Oriented Programming digunakan untuk menyusun program perangkat lunak menjadi potongan-potongan kode blueprint yang sederhana dan dapat dipakai kembali untuk membuat instance objek individual.

Sumber : Elements Envato

Ada banyak bahasa pemrograman yang bisa digunakan untuk membuat program yang berorientasi objek, misalnya JavaScript, C++, Java, dan Python.

Tak hanya berorientasi pada objek, model pemrograman ini juga bisa berorientasi pada kelas yang nantinya dipakai untuk membuat objek individual dalam programming. Apa itu class dalam dunia coding? Class merupakan blueprint atau bagian isi dari objek yang dibuat.

Bagian ini memiliki fokus terhadap hal-hal umum, sehingga dapat memberikan model lebih spesifik. Misalnya kamu menggunakan kelas ‘Pohon’ ke dalam pemrograman kamu.

Maka, karakteristik objek yang bisa saja terbentuk berdasarkan prinsip OOP adalah ‘Pohon Mangga’ dimana bentuk ini adalah turunan dari kelas induk ‘Pohon’.

Dengan mendefinisikan set kelas yang mewakili dan merangkum objek dalam suatu program, class dapat diatur ke dalam modul. Tujuannya adalah untuk meningkatkan struktur dan organisasi program perangkat lunak. 

Dengan demikian, developer menggunakan OOP adalah sebagai alat ketika mereka membuat kode program yang kompleks. Hal ini dikarenakan dengan menggunakan OOP , susunan kode program lebih mudah dan ringkas.

Baca Juga : Kumpulan Contoh Coding HTML Dasar, Pemula Wajib Tahu!

Konsep OOP dan Contohnya

Secara garis besar Object Oriented Programming memiliki empat konsep dasar.

Di antaranya enkapsulasi, abstraksi, pewarisan, dan polimorfisme. Sekalipun konsep-konsep ini tampak sangat kompleks, memahami kerangka kerja umum tentang cara kerjanya akan membantu kamu memahami dasar-dasar program komputer OOP. 

Berikut ini uraian tentang empat konsep dasar OOP (Object Oriented Programming) yang wajib kamu tahu:

1. Enkapsulasi (Encapsulation)

Konsep dan contoh pertama dari OOP adalah enkapsulasi. Kata “enkapsulasi” memiliki arti melingkupi atau membungkus sesuatu.

Sama seperti pil yang “mengenkapsulasi” atau mengandung obat di dalam lapisannya. Konsep enkapsulasi bekerja dengan cara mengatur struktur class dan menyembunyikan alur kerja dari class yang telah dibuat.

Hal ini bertujuan untuk membentuk penghalang atau pelindung di sekitar informasi yang terkandung dalam class.

Dengan begitu, sebuah blueprint class tetap dalam kondisi private oleh setiap objek yang ada di dalam pemrograman.

Sederhananya, enkapsulasi mengacu pada pembuatan modul mandiri (class) yang mengikat fungsi pemrosesan ke anggota datanya.

Data dalam setiap kelas terjaga kerahasiaannya. Setiap class mendefinisikan aturan untuk apa yang terlihat secara publik dan modifikasi apa yang diizinkan.

Contohnya ketika kamu ingin menguraikan data pribadi di kelas, seperti “socialSecurityNumber”, yang mana data ini tidak boleh terekspos ke objek lain dalam program.

Anggota data ini harus dienkapsulasi menjadi variabel khusus dalam kelas, sehingga tidak dapat diakses dari luar

Dengan begitu, kode itu akan tetap aman di dalam objek orang itu.

2. Abstraksi

Konsep abstraksi banyak diterapkan pada class dan method dalam OOP. Abstract Class adalah sebuah class dalam OOP yang tidak bisa dibuat menjadi objek.

Selain itu abstract class juga merupakan pondasi dasar bagi class turunannya.

Dapat disebut sebagai abstract class setidaknya harus memiliki satu atau lebih abstract method. Abstract Method sendiri merupakan sebuah metode yang berisi aksi untuk suatu abstract class.

Nantinya aksi yang berada pada abstract method akan diimplementasikan ulang dalam child class. Bingung antara abstract class dengan abstract method? Coba pahami contoh berikut ini.

Misalkan ingin membuat class yang terdiri dari berbagai jenis mamalia seperti class singa, class harimau, class serigala.

Seluruh class ini tentunya memiliki ciri-ciri mamalia, seperti memiliki gigi yang lengkap, alat pernapasan paru-paru, dan memiliki rambut atau bulu. 

Setiap hewan mamalia memiliki ciri umum dan ciri khusus. Nah, untuk ciri umum inilah bisa digunakan di setiap class yang diturunkan dari class mamalia. Ciri umum tersebut adalah dibuat dalam method memiliki ciri_umum().

Lalu, bagaimana caranya agar mesin dapat melakukan method ciri_umum() di setiap class? Solusinya adalah dengan menerapkan class mamalia sebagai abstract class, dan method ciri_umum() sebagai abstract method.

3. Pewarisan (Inheritance)

Terkadang beberapa class yang dibuat dalam kode program, ada hal-hal atau karakteristik yang sama diantara class- class yang dibuat.

Tidak efektif bukan jika ada beberapa hal yang sama harus diulang kembali untuk setiap class yang dibuat? Nah, apabila menggunakan konsep OOP kondisi tersebut dapat diselesaikan menggunakan konsep pewarisan atau inheritance.

Baca juga :

Konsep pewarisan pada OOP ini akan lebih efektif dan efisien saat membuat kode program. Pewarisan atau inheritance merupakan bagian dari konsep OOP yang mana suatu class (parent class) dapat menurunkan atau mewarisi karakteristik dan metode kepada class lainnya (child class).

Penggambaran konsep pewarisan ini misalnya class kucing sebagai parent class.

Seperti yang kita tahu bahwa kucing dapat makan, berjalan, berlari, dan memanjat. Sehingga terdapat 4 aktivitas yang bisa dilakukan kucing. Keempat aktivitas tersebut disebut dengan method pada class kucing.  

oop adalah

Kemudian, kenyataanya kucing memiliki berbagai macam jenis nya, misalnya anggora, persia, scottish, dan masih banyak lagi.

Karena kucing anggora, persia, dan scottish sama- sama bisa melakukan 4 aktivitas yang telah disebutkan tadi, maka untuk membuat mempersingkat kode program kamu bisa menggunakan konsep pewarisan ini.

Jadi tidak perlu membuat class kucing dengan 4 method, class anggora dengan 4 method, class persia dengan 4 method , dan class scottish dengan 4 method.

Cukup menurunkan sifat atau method dari class kucing saja sebagai parent class, maka class anggora, persia, dan scottish dapat melakukan semua method yang ada pada class kucing.

4. Polimorfisme

Konsep dan contoh terakhir dari OOP adalah konsep polimorfisme. Dalam Object Oriented Programming, polimorfisme merupakan konsep yang pengklasifikasian objek yang sama persis seperti induk kelasnya. Dengan begitu, developer dapat mencegah terjadinya kebingungan dengan tipe-tipe campuran.

Menggunakan konsep ini juga memungkinkan developer untuk memberi perlakuan yang seragam kepada kelas. Karena objek turunan memiliki sifat yang sama dengan induknya, kode panggilan dapat memanggil fungsi apa pun di antarmuka kelas itu. 

Saat program berjalan, sistem akan secara otomatis memanggil fungsi yang sesuai tergantung pada jenis objek yang telah di program. Sebagai contoh, kamu memiliki class “Hewan” dan dua sub-class yakni, “Kucing,” dan “Anjing.” 

Jika kelas “Hewan” memiliki metode untuk membuat suara, yang disebut, “makeNoise,” maka, kita dapat menimpa fungsi “makeNoise” yang diwarisi oleh subkelas, “Kucing” dan “Anjing,” menjadi “meow- meow” dan “guk- guk”.

Kelebihan dan Kekurangan OOP

Agar lebih paham lagi mengenai OOP, mari kita ke pembahasan selanjutnya. Di pembahasan selanjutnya kamu akan memahami apa saja kelebihan dan kekurangan OOP. 

Kelebihan OOP

Setiap konsep pemrograman memiliki kelebihan masing- masing. Begitu pula dengan OOP. Adapun kelebihan darikonsep OOP sendiri adalah sebagai berikut:

  • Membangun program pada modul kerja yang memungkinkan berkomunikasi satu sama lain. Fungsi ini lebih baik daripada harus mulai dari 0, dengan begitu dapat menghemat waktu pengembangan sehingga produktivitas akan lebih baik.
  • Bahasa OOP (Object Oriented Programming) memungkinkan kamu memecah program menjadi program berukuran bit yang dapat diselesaikan dengan mudah.
  • Dengan kualitas perangkat yang lebih baik produktivitas divisi pengembang akan lebih meningkat dari sebelumnya.
  • Biaya perawatannya rendah membuat pengeluaran biaya tidak sebanyak menggunakan perangkat lain.
  • Seluruh sistem Object Oriented Programming dapat dengan di-upgrade dengan mudah.
  • Ada kemungkinan bahwa beberapa contoh objek dapat berfungsi berdampingan tanpa gangguan apa pun.
  • Memudahkan kamu untuk memetakan objek dalam problem domain ke objek dalam program.
  • Prinsip enkapsulasi data, dapat membantu kamu untuk membangun program yang aman dan tidak mudah diserang oleh kode di bagian lain dari program.
  • Dengan menggunakan prinsip inheritance, kamu dapat menghilangkan kode yang berlebihan dan memperluas penggunaan kelas yang ada.
  • Teknik pengiriman pesan berguna untuk komunikasi antar objek yang membuat deskripsi antarmuka dengan sistem eksternal menjadi lebih sederhana.
  • Pendekatan desain yang berpusat pada data memungkinkan kamu untuk mengambil lebih banyak detail model.

Kekurangan OOP

Setelah kamu memahami kelebihan OOP, tidak adil jika kamu tidak mengetahui apa saja kekurangannya. Tidak ada yang sempurna, pastinya konsep Object Oriented Programming juga memiliki kekurangan, di antaranya:

  • Panjang program yang dikembangkan menggunakan bahasa OOP adalah jauh lebih besar daripada pendekatan prosedural. Karena program menjadi lebih besar dalam ukuran, proses eksekusi jadi memakan waktu yang lebih lama.
  • Kamu tidak dapat menerapkan OOP di semua bahasa pemrograman karena ini bukan bahasa universal.
  • Harus memiliki keterampilan merancang dan pemrograman yang tinggi serta perencanaan yang tepat karena menggunakan OOP sedikit rumit.
  • Semuanya diperlakukan sebagai objek di OOP. Jadi, sebelum menerapkannya kamu harus memiliki pengetahuan yang sangat baik dalam hal objek.

Sudah Pahamkah Kamu Mengenai Metode Pemrograman Object Oriented Programming?

Nah, demikianlah artikel tentang Object Oriented Programming yang wajib kamu pahami, apalagi jika kamu berkecimpung di dunia pemrograman. Mulai dari pengertian, konsep, hingga kelebihan dan kekurangan OOP yang menjadikannya sebagai metode pemrograman yang unik.

Nah jika kamu seorang pemula yang masih bingung mengenai konsep OOP pada coding, wajar- wajar saja kok.

Karena pada dasarnya, keahlian dan keterampilan seseorang akan bertambah seiring dengan jam terbang. Itu artinya latihan dan sering mencoba adalah kuncinya

Buat kamu ingin belajar coding dengan mudah, cocok untuk pemula, dan bisa diakses melalui smartphone, selengkapnya bisa baca artikel Belajar Coding untuk Pemula, Cuma 10 Menit Mudah. Jadi jangan menyerah ya! Tetap giat belajar dan mencoba ya!

Mila Rosyida

Halo ! I'm a Technical Content Specialist in DomaiNesia. I love learn anything about Technical, Data, Machine Learning, and more Technology.


Berlangganan Artikel

Dapatkan artikel, free ebook dan video
terbaru dari DomaiNesia

{{ errors.name }} {{ errors.email }}
Migrasi ke DomaiNesia

Pindah Ke DomaiNesia

Tertarik mendapatkan semua fitur layanan DomaiNesia? Dapatkan Diskon Migrasi 40% serta GRATIS biaya migrasi & setup

Ya, Migrasikan layanan Saya!

Hosting Murah

This will close in 0 seconds