Pengantar Pemrograman Berorientasi Objek

MATERI PEMBELAJARAN
Mapel Pemrograman Berorientasi Objek
Kelas 12 PPLG
Semester Ganjil
Topik 01 (Pengantar Pemrograman Berorientasi Objek)

Selamat datang di dunia Pemrograman Berorientasi Objek (PBO)! Kalian mungkin pernah belajar pemrograman yang berjalan secara berurutan, dari atas ke bawah, baris per baris. Itu dikenal sebagai pemrograman prosedural. Nah, PBO adalah cara berpikir yang berbeda dalam membuat program. Ibaratnya, kalau pemrograman prosedural itu seperti membuat resep masakan yang semua langkahnya harus diikuti secara berurutan, PBO itu seperti membangun sebuah LEGO: kita membuat bagian-bagian kecil yang bisa digabungkan menjadi sesuatu yang besar.

A. Apa Itu Pemrograman Berorientasi Objek ?

Pemrograman Berorientasi Objek (PBO) atau sering disebut Object-Oriented Programming (OOP) adalah sebuah paradigma atau cara pandang dalam merancang dan mengembangkan perangkat lunak, yang didasarkan pada konsep "objek". Daripada fokus pada logika dan fungsi secara terpisah, PBO mengelompokkan data (informasi) dan fungsi (aksi) yang terkait menjadi satu kesatuan yang disebut objek.

Bayangkan dalam Kehidupan Sehari-hari:
Coba kalian lihat sekeliling. Ada meja, kursi, buku, pensil, tas, dan banyak lagi. Semua itu adalah objek. Setiap objek punya ciri-ciri (misal: warna, ukuran, bahan) dan bisa melakukan sesuatu atau dikenai aksi (misal: kursi bisa diduduki, buku bisa dibaca, pensil bisa dipakai menulis). Nah, cara PBO bekerja mirip seperti itu, kita memodelkan dunia nyata ke dalam program kita.

B. Konsep Dasar PBO: Pilar-Pilar Utama

Ada empat konsep dasar yang menjadi pilar utama PBO, yaitu Objek, Kelas, Atribut, dan Metode. Mari kita bedah satu per satu.
  1. Objek (Object)
    Objek adalah sebuah "benda" nyata atau abstrak yang memiliki karakteristik (sifat) dan perilaku (aksi). Dalam program, objek adalah instance atau wujud nyata dari sebuah kelas.

    Contoh dalam Kehidupan Sehari-hari:
    • Objek "Mobil":
      • Karakteristik: Warna (Merah), Merek (Toyota), Model (Avanza), Jumlah Roda (4).
      • Perilaku/Aksi: Bisa bergerak(), mengerem(), menyalakanLampu().
    • Objek "Peserta Didik":
      • Karakteristik: Nama (Budi Santoso), NIS (12345), Kelas (XII PPLG), Jurusan (PPLG).
      • Perilaku/Aksi: Bisa belajar(), mengerjakanTugas(), absensi()

  2. Kelas (Class)
    Jika objek adalah benda nyatanya, maka kelas adalah cetak biru (blueprint) atau template atau prototipe dari sebuah objek. Kelas mendefinisikan apa saja atribut (karakteristik) yang akan dimiliki objek dan apa saja metode (perilaku/aksi) yang bisa dilakukan oleh objek yang dibuat dari kelas tersebut.

    Kelas itu seperti cetakan kue atau denah rumah. Kita bisa membuat banyak kue dengan bentuk yang sama dari satu cetakan, atau membangun banyak rumah dengan desain yang sama dari satu denah.

    Contoh dalam Kehidupan Sehari-hari:
    • Kelas "Mobil": Ini adalah ide atau konsep umum tentang mobil. Kelas ini mendefinisikan bahwa setiap mobil punya warna, merek, model, jumlahRoda, dan bisa bergerak(), mengerem(). Dari kelas "Mobil" ini, kita bisa membuat objek mobil_saya (misal: Toyota Avanza Merah) dan mobil_teman (misal: Honda Civic Biru).
    • Kelas "Peserta  Didik": Ini adalah konsep umum tentang seorang peserta didik. Kelas ini mendefinisikan bahwa setiap peserta didik punya nama, NIS, kelas, jurusan, dan bisa belajar(), mengerjakanTugas(). Dari kelas ini, kita bisa membuat objek siswa_budi, siswa_siti, dan seterusnya.

      Perbedaan Kelas dan Objek (Penting!):
      • Kelas: Konsep, cetak biru, tidak punya wujud nyata dalam memori komputer.
      • Objek: Wujud nyata dari kelas, instance, ada dalam memori komputer, bisa diinteraksi.

  3. Atribut (Attribute)
    Atribut adalah karakteristik atau sifat yang dimiliki oleh sebuah objek. Atribut ini biasanya disebut juga properti atau data anggota (member data). Atribut mendefinisikan data apa saja yang akan disimpan dalam objek.

    Contoh:
    • Jika kita punya Kelas "Mobil": Atributnya bisa jadi: warna, merek, model, jumlahRoda, kecepatan.
    • Jika kita punya Kelas "Kucing": Atributnya bisa jadi: nama, warnaBulu, ras, berat.

  4. Metode (Method)
    Metode adalah perilaku atau aksi yang bisa dilakukan oleh sebuah objek. Metode juga sering disebut fungsi anggota (member function). Metode mendefinisikan tindakan apa saja yang bisa dilakukan objek, atau tindakan apa yang bisa dikenakan pada objek.

    Contoh:
    • Jika kita punya Kelas "Mobil": Metodenya bisa jadi: bergerak(), mengerem(), menyalakanLampu(), membukaJendela().
    • Jika kita punya Kelas "Kucing": Metodenya bisa jadi: tidur(), makan(), mengeong(), melompat().

C. Keuntungan Menggunakan PBO

Mengapa kita harus repot-repot belajar PBO? Apa keuntungannya dibandingkan pemrograman prosedural? Berikut beberapa alasannya:
  1. Mudah Dipelihara (Maintainability): Karena program dibagi menjadi objek-objek kecil yang independen, jika ada masalah atau perlu perubahan di satu bagian, kita hanya perlu fokus pada objek tersebut tanpa mengganggu bagian lain dari program. Ini seperti memperbaiki satu bagian mesin mobil tanpa harus membongkar seluruh mobil.
  2. Mudah Digunakan Ulang (Reusability): Sekali kita membuat sebuah kelas, kita bisa menggunakannya berulang kali di bagian program yang berbeda, bahkan di proyek yang berbeda. Contohnya, kelas "Pelanggan" yang sudah dibuat untuk aplikasi penjualan, bisa dipakai lagi di aplikasi inventaris atau aplikasi layanan pelanggan. Ini menghemat waktu dan tenaga.
  3. Mudah Dikembangkan (Scalability): PBO memudahkan penambahan fitur baru tanpa harus menulis ulang banyak kode yang sudah ada. Cukup tambahkan kelas baru atau modifikasi kelas yang ada secara spesifik.
  4. Lebih Terstruktur dan Terorganisir: Program PBO cenderung lebih rapi dan logis karena memodelkan masalah ke dalam objek-objek yang terdefinisi dengan baik. Ini membuatnya lebih mudah dipahami, terutama untuk proyek yang dikerjakan oleh tim.
  5. Mengurangi Kompleksitas: Dengan memecah masalah besar menjadi bagian-bagian yang lebih kecil (objek), kompleksitas keseluruhan program dapat dikurangi. Setiap objek bertanggung jawab atas tugasnya sendiri.

D. Perbedaan PBO dan Pemrograman Prosedural

No Fitur Pemrograman Prosedural Pemrograman Berorientasi Objek
1 Fokus Utama Fungsi/Prosedur. Data dan fungsi terpisah. Objek. Menggabungkan data dan fungsi dalam satu kesatuan.
2 Struktur Program Sekumpulan fungsi yang memanipulasi data global. Sekumpulan objek yang berinteraksi satu sama lain.
3 Fitur Pemrograman Prosedural Pemrograman Berorientasi Objek
4 Pendekatan "Apa yang akan dilakukan?" (Top-down) "Siapa yang melakukan dan apa yang mereka miliki?" (Bottom-up)
5 Keamanan Data Data seringkali bersifat global dan mudah diakses, kurang aman. Data tersembunyi (enkapsulasi) di dalam objek, lebih aman.
6 Penggunaan Kembali Kurang mudah digunakan ulang karena fokus pada urutan. Sangat mudah digunakan ulang melalui kelas dan objek.
7 Contoh Bahasa C, Pascal, FORTRAN Java, C++, Python, Visual Basic .NET

Contoh sederhana:
  • Prosedural: Kita membuat fungsi HitungLuasPersegi(panjang, lebar) yang menerima data, lalu menghitung.
  • PBO: Kita membuat Kelas Persegi yang punya atribut panjang dan lebar, lalu punya metode HitungLuas(). Jadi, objek persegi1 yang dibuat dari kelas Persegi itu sendiri yang bisa HitungLuas() miliknya. Data dan aksi menyatu.

Penutup

Memahami konsep dasar Objek, Kelas, Atribut, dan Metode adalah langkah pertama yang paling penting dalam menguasai PBO. Meskipun mungkin terasa abstrak di awal, dengan latihan dan contoh nyata, kalian akan segera melihat bagaimana PBO membuat pengembangan perangkat lunak menjadi lebih logis, efisien, dan menyenangkan! Pada pertemuan selanjutnya, kita akan mulai melihat bagaimana konsep-konsep ini diimplementasikan dalam Visual Basic .NET.

Ada pertanyaan sejauh ini? Jangan ragu untuk bertanya, ya!



*

Posting Komentar (0)
Lebih baru Lebih lama