Lanjutan OOP

Paradigma pemrograman berbasis obyek. banyak kondep, istilah dan teori yang perlu dipahami agar dapat kita manfaatkan

  • Inheritance, atau pewarisan, adalah salah satu konsep dasar pemrograman berorientasi objek (OOP). Konsep ini memungkinkan kelas baru untuk mewarisi sifat, metode, dan atribut dari kelas lain. Inheritance menggunakan sistem hirarki, dengan kelas dasar (superclass) dan kelas anak (subclass). Semakin spesifik subclassnya, semakin sedikit komponen yang dapat diwarisi kelas tersebut.

class Person {
    constructor(name,age){
        this.name = name;
        this.age = age;
    }
}
class Programmer extends Person {
    constructor(name, age) {
        super(name, age)
    }
}
//super() -> fungsi yang di panggil untuk menunjuk atribut dari class parent-nya
  • Polimorfisme adalah salah satu konsep dasar dalam pemrograman berorientasi objek (OOP) yang menggambarkan situasi di mana sesuatu dapat terjadi dalam beberapa bentuk yang berbeda. Dalam ilmu komputer, polimorfisme menggambarkan konsep bahwa Anda dapat mengakses objek dari berbagai jenis melalui antarmuka yang sama.

Objek yang berbeda dapat di akses melalui interface yang sama. Contoh: rumus luas benda berlaku untuk berbagai bentuk. masing-masing bentuk memiliki rumus yang khas. tapi yang kita cari adalah sama luas.
  • Enkapsulasi (encapsulation) adalah konsep dasar dalam pemrograman berorientasi objek (OOP) yang menggabungkan data dan metode yang beroperasi pada data tersebut ke dalam satu unit. Tujuan utama enkapsulasi adalah untuk menyembunyikan detail internal implementasi objek dari dunia luar dan menyediakan antarmuka yang dapat berinteraksi dengan objek tersebut.

Konsep pengikat data dan metode disatukan menjadi satu unit data

class Student{
    constructor(name, gpa){
        this._name = name;
        this._gpa = gpa;
    }
    get name() {
        return this._name;
    }
    get gpa() {
        return this._gpa;
    }
    set setName(name) {
        this._name = name;
    }
    set setGpa(gpa) {
        this._gpa = gpa;
    }
}

// di javasript tidak ada private code, tetapi bisa menggunakan _
// setter dan getter (akses private)
// getter untuk mengambil nilai nya
// setter untuk meng set isi ke atribut
  • Abstraksi dalam pemrograman berorientasi objek (OOP) adalah konsep yang bertujuan untuk menyederhanakan kompleksitas sistem dengan menyembunyikan detail-detail teknis yang tidak perlu. Abstraksi memungkinkan pengguna untuk menerapkan logika yang lebih kompleks di atas abstraksi yang disediakan tanpa memahami atau bahkan memikirkan semua kompleksitas yang tersembunyi.

Last updated

Was this helpful?