Pengantar Pola Desain
Termasuk bagian Pemrograman Berorientasi Objek dalam perjalanan Python di Coddy. Pelajaran 44 dari 64.
Pola desain adalah solusi yang dapat digunakan kembali untuk masalah umum dalam desain perangkat lunak. Pola ini seperti cetak biru yang dapat kamu sesuaikan untuk mengatasi masalah desain berulang dalam kodemu.
Anggap pola desain sebagai templat teruji yang digunakan developer berpengalaman untuk menyelesaikan masalah serupa. Saat kamu mengatakan "Saya menggunakan pola Singleton," developer lain langsung memahami struktur kodemu.
Berikut contoh sederhana tentang pentingnya pola:
# Tanpa pola: pendekatan yang berantakan
class DatabaseConnection:
def __init__(self):
self.connection = "Connected to database"
# Masalah: Beberapa koneksi dibuat
db1 = DatabaseConnection()
db2 = DatabaseConnection() # Boros: membuat koneksi lainDengan pola desain, kamu mendapatkan solusi yang lebih baik:
# Dengan pola Singleton, pendekatan yang terkontrol
class DatabaseConnection:
_instance = None
def __new__(cls):
if cls._instance is None:
cls._instance = super().__new__(cls)
cls._instance.connection = "Connected to database"
return cls._instance
# Sekarang hanya ada satu koneksi
db1 = DatabaseConnection()
db2 = DatabaseConnection()
print(db1 is db2) # True, instance yang samaMengapa menggunakan pola desain:
- Dapat digunakan kembali: Solusi yang bisa kamu terapkan pada masalah serupa
- Komunikasi: Kosakata umum di antara para developer
- Praktik Terbaik: Solusi yang telah teruji oleh waktu
- Kemudahan Pemeliharaan: Kode yang terstruktur dan tertata dengan baik
Yang akan kamu pelajari dalam seri ini:
Pola Kreasi (cara object dibuat):
- Pola Singleton, hanya satu instans
- Pola Factory, membuat object tanpa menentukan class secara spesifik
Pola Struktural (cara object disusun):
- Pola Adapter, membuat antarmuka yang tidak kompatibel bekerja bersama
- Pola Decorator, menambahkan fungsionalitas tanpa mengubah struktur
Pola Perilaku (cara object berinteraksi):
- Pola Observer: Beri tahu beberapa object tentang perubahan
- Pola Strategy: Ganti algoritma secara dinamis
- Pola Command: Bungkus permintaan sebagai object
Setiap pelajaran pola akan membahas:
- Masalah yang dipecahkannya
- Cara mengimplementasikannya di Python
- Kapan menggunakannya
- Contoh di dunia nyata
Poin utama: Design pattern adalah solusi teruji untuk masalah pemrograman yang umum. Design pattern menyediakan kosakata bersama dan praktik terbaik yang membuat kodemu lebih mudah dipelihara, fleksibel, dan dipahami. Kamu akan mempelajari 7 pattern penting yang sebaiknya diketahui setiap developer Python.
Coba sendiri
Pelajaran ini tidak memiliki tantangan kode.
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Pemrograman Berorientasi Objek
1Dasar-Dasar OOP
File EksternalPengantar OOPclass vs objectParameter selfmethodAtributMethod Konstruktor (__init__)Rangkuman: Kalkulator Sederhana4Pewarisan
Pewarisan DasarFungsi super()Penimpaan MethodPewarisan BergandaUrutan Resolusi MethodRingkasan: Hierarki Karyawan5Polimorfisme
Meninjau Ulang Method OverridingDuck Typingclass dan method AbstrakDesain InterfaceRingkasan: Kalkulator Bentuk8Konsep OOP Lanjutan
Komposisi vs PewarisanMixinsMetode Statis dan Metode ClassDecorator ClassPengelola Konteks11Pola Desain Bagian 2
Pola PerintahPola AdapterPola DecoratorPola Template MethodPola StatePola Composite3Property class
Variabel instance vs variabel classDekorator propertyAtribut privatRangkuman: Pengelola Rekening Bank6Enkapsulasi
Anggota Public, Protected, PrivateModifier AksesPenyembunyian InformasiDecorator Property Tingkat LanjutUlasan: Sistem Catatan Siswa12Proyek: Manajemen Perpustakaan
Ikhtisar Proyekclass Buku dan PenggunaSistem PeminjamanFitur PencarianAntarmuka AdminPengujian dan IntegrasiLatihan sendiri: Compiler Python online