Pemrograman Berorientasi Objek dengan PHP

Aug 25, 2024

Catatan Kuliah: Object Oriented PHP

Pendahuluan

  • Selamat datang di channel web programming Unpass.
  • Nama pengajar: Sandika Gali.
  • Seri ini: Object Oriented PHP (PHP Berorientasi Objek).
  • Fokus pembelajaran: Implementasi pemrograman berbasis objek menggunakan PHP.

Apa itu Object Oriented Programming (OOP)?

  • Gaya pemrograman/Paradigma pemrograman.
  • Berbeda dengan Procedural Programming.

Procedural Programming

  • Karakteristik:
    • Instruksi ditulis langkah demi langkah.
    • Modularisasi: Memecah program menjadi bagian kecil (misalnya: fungsi).
    • Linear: Program dibaca dari atas ke bawah.
  • Bahasa Pemrograman:
    • Menggunakan gaya prosedural: Fortran, Algol, Kobol, Pascal, C, PHP, JavaScript.

Kelebihan Procedural Programming

  • To the point: Langsung melakukan tindakan dengan baris tertentu.
  • Simplicity: Mudah dibaca dan dikelola.
  • Linear: Mudah menelusuri error.
  • Memerlukan lebih sedikit memory dibanding OOP.

Object Oriented Programming

  • Karakteristik:
    • Kode disusun dalam objek.
    • Objek sebagai unit dasar program.
    • Objek menyimpan data dan perilaku (property & method).
    • Objek saling berinteraksi.
  • Bahasa Pemrograman:
    • Java, Ruby, Python, dan PHP (mulai PHP 5).

Kelebihan Object Oriented Programming

  • Representasi dunia nyata lebih mudah.
  • Enkapsulasi dan abstraksi data: Melindungi data dan menyederhanakan kerumitan.
  • Reusability: Pemanfaatan kembali bagian program yang telah dibuat.
  • Skalabilitas dan extensibilitas: Mudah saat pengembangan menjadi lebih besar.
  • Kolaborasi: Memudahkan kerja tim dalam proyek besar.
  • Digunakan oleh framework PHP.

Perbandingan: Procedural vs Object Oriented

  • Tidak ada yang lebih baik; masing-masing memiliki fokus sendiri:
    • Procedural: Program sederhana, dikerjakan sendiri.
    • Object Oriented: Program besar, dikerjakan tim.

Konsep yang Dipelajari dalam Seri ini

Dasar-dasar Object Oriented PHP:

  1. Kelas dan objek.
  2. Property dan method.
  3. Constructor: Karakteristik default objek.
  4. Object type: Membuat objek sebagai tipe data.
  5. Inheritance (pewarisan): Kelas/objek mewarisi perilaku.
  6. Visibility (Access Modifier): Enkapsulasi data.
  • Jenis: public, private, protected.
  1. Setter dan getter: Mengubah property data.
  2. Static method: Digunakan di framework.

Materi Lanjutan:

  • Abstract dan interface.
  • Interceptor.
  • Magic method.
  • Objek cloning.
  • Callbacks dan closures.
  • Namespacing dan Auto loading.

Persiapan untuk Mengikuti Seri ini

  • Siapkan:
    • Kode editor (Sublime Text, VS Code, PHPStorm).
    • Web server (Apache).
    • Web browser.
    • Database server (XAMPP, MAMP, LAMP).

Penutup

  • Jika belum familiar dengan PHP, sarankan untuk mengikuti seri "Belajar PHP untuk Pemula" terlebih dahulu.
  • Terima kasih telah menyaksikan video ini. Sandika Gali pamit.