Pengenalan Pemrograman Berorientasi Objek (OOP)

Jul 23, 2024

Pengenalan Pemrograman Berorientasi Objek (OOP)

Apa itu Pemrograman Berorientasi Objek?

  • Teknik membuat program/sistem berorientasi pada sekumpulan objek yang saling berhubungan.
  • Objek saling berinteraksi dengan mengirim pesan satu sama lain.

Contoh Interaksi Objek

  • Objek Manusia (Andre): Punya mobil BMW.
  • Andre ingin menambah kecepatan mobil → Mengirim pesan ke mobil.
  • Dalam konteks nyata: Menginjak pedal gas untuk mengirim pesan ke mobil.

Perbedaan dengan Pemrograman Terstruktur

Pemrograman Terstruktur

  • Dibagi menjadi beberapa bagian: fungsi atau modul.
  • Fungsi dijalankan jika dipanggil.
  • Urutan fungsi menandakan urutan jalannya sistem.

Pemrograman Berorientasi Objek

  • Memandang sistem sebagai sekumpulan objek yang saling berinteraksi.
  • Contoh: Sistem Informasi Akademik di kampus.
    • Objek: Mahasiswa, Dosen, Pegawai.
    • Objek saling berkirim pesan (misalnya, dosen memberikan nilai, mahasiswa mengajukan KRS).
  • Data dan fungsi dibungkus dalam kelas atau objek:
    • Variabel: Menyimpan data (state).
    • Method: Mendefinisikan tindakan yang dapat dilakukan (behavior).

Tabel Perbedaan Struktur Programming dan OOP

| Aspek | Struktur Programming | Objek Oriented Programming | |-------|----------------------|----------------------------| | Definisi | Membagi kode menjadi modul/fungsi | Berdasarkan objek yang saling berinteraksi | | Fokus Utama | Membagi program jadi satu set fungsi | Representasi program dengan objek | | Modifikasi Program | Sulit dimodifikasi | Lebih mudah dimodifikasi | | Komunikasi | Fungsi dipanggil dalam program utama | Objek mengirimkan pesan satu sama lain | | Penentu Akses | Tidak ada penentu akses | Ada penentu akses (private, public, protected) | | Keamanan | Data tidak aman | Data lebih aman |

Penentu Akses dalam OOP

  • Private: Hanya bisa diakses oleh kelas tersebut saja.
  • Public: Bisa diakses oleh semuanya.
  • Protected: Hanya bisa diakses oleh kelas tersebut dan turunannya.

Kesimpulan

  • OOP mendukung interaksi antar objek dengan pesan.
  • Struktural programming berfokus pada pemanggilan fungsi.
  • OOP memberikan keamanan dan kemudahan modifikasi lebih baik dibandingkan dengan struktural programming.