Konsep Dasar Object Oriented Programming (OOP)

Estimated: 4 min read
Konsep Dasar Object Oriented Programming (OOP)

Object Oriented Programming(OOP) merupakan paradigma pemrograman yang banyak diterapkan ketika membangun sebuah aplikasi. Seperti namanya, OOP merupakan paradigma pemrograman yang fokus atau berorientasi pada objek.

Apa itu objek yang dimaksud???

Objek merupakan sebuah entitas yang terdiri dari dua hal yaitu properties dan methods. Objek pada OOP dapat kita anggap layaknya objek yang ada di dalam dunia nyata. Masih bingung???

Mari kita lihat contohnya, Kucing merupakan sebuah objek. Dalam paradigma OOP, seekor kucing dapat dilihat sebagai objek yang memiliki properties seperti jenis kelamin, warna, ras, berat, dan nama. Kucing (baca: Objek) tersebut memiliki methods atau kemampuan seperti berjalan, makan, berlari, dan tidur.

Pemrograman berorientasi objek (OOP) memiliki empat prinsip dasar, yaitu:

  • Encapsulation
  • Inheritance
  • Abstraction
  • Polymorphism

Mari kita lihat lebih detail...

1. Encapsulation / Enkapsulasi

Encapsulation memiliki arti membungkus atau melingkupi sesuatu. Sama seperti pil yang berbentuk kapsul yang membungkus obat di dalamnya agar terhindar dari pengaruh luar, Encapsulation pada OOP juga melakukan hal yang sama.

Konsep enkapsulasi pada OOP bekerja dengan cara mengatur properties atau methods mana saja yang dapat dan tidak dapat diakses dari luar. Hal ini bertujuan untuk membentuk barrier atau pelindung terhadap informasi yang ada di dalam suatu objek.

2. Inheritance / Pewarisan

Beberapa objek di dunia nyata terkadang memiliki beberapa karakteristik yang mirip, begitu juga dalam OOP. Terkadang kita akan membuat Objek yang memiliki karakteristik yang sama.

Tentu akan sanat tidak efektif jika kita harus membuat dan menulis ulang properties atau methods yang sama berulang kali di dalam objek yang berbeda.

Dalam OOP, masalah tersebut dapat diselesaikan dengan konsep inheritance dimana kita cukup membuat properties atau methods yang memiliki karakteristik yang serupa ke dalam sebuah objek yang bersifat general dan kita cukup mewariskan properties atau methods tersebut ke dalam objek-objek yang memiliki kemiripan.

3. Abstraction / Abstraksi

Abstraction merupakan konsep OOP dimana kita dapat membuat methods tanpa harus tahu bagaimana methods tersebut bekerja. Konsep abstraksi hanya menunjukkan hal yang penting untuk diketahui dengan menyembunyikan detail internal.

Abstraksi dapat diilustrasikan sebagai sebuah blueprint atau prototype untuk membuat sebuah objek.

4. Polymorphism

Polymorphism tersusun atas dua kata; yaitu poly yang berarti banyak, dan morph yang artinya bentuk. Polimorfisme dalam OOP merupakan sebuah konsep OOP di mana class atau objek memiliki banyak “bentuk” method yang berbeda, meskipun namanya sama. Maksud dari “bentuk” adalah isinya yang berbeda, namun tipe data dan parameternya berbeda.

Beberapa Istilah Dalam OOP

Ada beberapa istilah yang secara umum ada di dalam paradigma OOP (Object Oriented Programming) yang harus kita pahami.

IstilahPenjelasan
ClassCetak biru atau prototipe dari objek dimana kita mendefinisikan atribut dari suatu objek. Atribut ini terdiri dari data properties (variabel) dan perilaku (methods).
Class VariableVariabel yang dishare atau dibagi oleh semua instance (turunan) dari class. Class Variabel didefinisikan di dalam class, tapi di luar metode-metode yang ada dalam class tersebut.
Data MemberVariabel yang menyimpan data yang berhubungan dengan class dan objeknya
Function OverloadingFungsi yang memiliki nama yang sama di dalam class, tapi dengan jumlah dan tipe argumen yang berbeda sehingga dapat melakukan beberapa hal yang berbeda.
Operator OverloadingPembuatan beberapa fungsi atau kegunaan untuk suatu operator. Misalnya operator + dibuat tidak hanya untuk penjumlahan, tapi juga untuk fungsi lain.
Instance variableVariabel yang didefinisikan di dalam suatu metode dan hanya menjadi milik dari instance class.
InheritancePewarisan karakteristik sebuah class ke class lain yang menjadi turunannya.
InstanceInstance adalah istilah lain dari objek suatu class. Sebuah objek yang dibuat dari prototipe class Lingkaran misalnya disebut sebagai instance dari class tersebut.
InstantiationPembuatan instance/objek dari suatu class.
MethodFungsi yang didefinisikan di dalam suatu class.
ObjectInstansiasi atau perwujudan dari sebuah class. Bila class adalah prototipenya, dan objek adalah barang jadinya.

Itulah beberapa konsep dasar dari Object Oriented Programming (OOP) yang perlu diketahui. Jika teman-teman masih merasa bingung dengan konsep OOP ini, nantinya kita akan melihat bagaimana implementasi konsep OOP ini dalam berbagai bahasa pemrograman yang dapat menggunakan paradigma OOP, tentunya hal tersebut akan membuat kita lebih paham dengan konsep OOP dan penerapannya.

Comments

Mohon sertakan informasi yang detail saat bertanya tentang eror, seperti: pesan error, log, dan screenshot.