← Kembali ke DudukDulu.com
Portal Slide Perkuliahan

Pemrograman Berorientasi Objek (PBO)

Dosen Pengampu: Aditya Pratama.

In-Lab Take-Home

Modul 01: Paradigma PBO & Vibe Coding

Perbandingan prosedural vs PBO, pemodelan state & behavior, dan peran insinyur sebagai System Architect.

In-Lab Take-Home

Modul 02: Objek, Class & Type Hints

Constructor __init__, parameter self, type annotations PEP 484, dan instance vs class attributes.

Rilis Mendatang In-Lab Take-Home

Modul 03: Enkapsulasi & @property

Proteksi state internal, decorator @property, getter & setter validasi, serta read-only computed properties.

Segera Hadir 🔒 🔒
Rilis Mendatang In-Lab Take-Home

Modul 04: Pewarisan, super(), & Overriding

Generalisasi, spesialisasi, pemanggilan super().__init__(), dan method overriding antar hierarki class.

Segera Hadir 🔒 🔒
Rilis Mendatang In-Lab Take-Home

Modul 05: Multiple Inheritance & Mixins

Pewarisan berganda, resolusi Diamond Problem via MRO, dan penyematan fitur modular dengan Mixin Pattern.

Segera Hadir 🔒 🔒
Rilis Mendatang In-Lab Take-Home

Modul 06: Penanganan Error Objek

Membangun hierarki custom exception spesifik domain yang menyimpan metadata kontekstual untuk debugging.

Segera Hadir 🔒 🔒
Rilis Mendatang In-Lab Take-Home

Modul 07: Abstraksi & Interface (ABCs)

Penerapan modul abc, @abstractmethod, dan prinsip Dependency Inversion pada gateway sistem.

Segera Hadir 🔒 🔒
Rilis Mendatang In-Lab Take-Home

Modul 08: Evaluasi Tengah Semester (UTS)

Live coding mandiri di lab: Core Auction Engine dan wawancara lisan 2 menit per mahasiswa.

Segera Hadir 🔒 🔒
Rilis Mendatang In-Lab Take-Home

Modul 09: Dunder Methods & Overloading

Metode spesial __repr__, __str__, operator overloading (+, ==, <), dan protokol koleksi objek.

Segera Hadir 🔒 🔒
Rilis Mendatang In-Lab Take-Home

Modul 10: Struktur Data @dataclass

Eliminasi boilerplate dengan Python @dataclass (PEP 557), frozen immutability, dan hook __post_init__.

Segera Hadir 🔒 🔒
Rilis Mendatang In-Lab Take-Home

Modul 11: Komposisi vs Pewarisan

Menghindari jebakan subclass explosion dan menerapkan prinsip Favor Composition Over Inheritance (has-a).

Segera Hadir 🔒 🔒
Rilis Mendatang In-Lab Take-Home

Modul 12: Iterator Protocol & Generators

Protokol iterasi (__iter__, __next__), lazy evaluation via keyword yield, dan penghematan memori.

Segera Hadir 🔒 🔒
Rilis Mendatang In-Lab Take-Home

Modul 13: Factory & Facade Pattern

Sentralisasi instansiasi objek dengan Factory Method dan penyederhanaan subsistem dengan Facade Pattern.

Segera Hadir 🔒 🔒
Rilis Mendatang In-Lab Take-Home

Modul 14: Behavioral Patterns: Strategy & Observer

Keluarga algoritma fleksibel (Strategy) dan arsitektur komunikasi objek berbasis event (Observer).

Segera Hadir 🔒 🔒
Rilis Mendatang In-Lab Take-Home

Modul 15: Automated Testing (pytest)

Jaminan kualitas kode PBO via unit testing pytest, test fixtures, dan pengujian exception raises.

Segera Hadir 🔒 🔒
Rilis Mendatang In-Lab Take-Home

Modul 16: Showcase Tugas Besar (UAS)

Presentasi proyek akhir aplikasi PBO lengkap terintegrasi 2 Design Patterns dan 10 test cases pytest.

Segera Hadir 🔒 🔒