[Design pattern] Builder Pattern và biến thể
Vấn đề: Giả sử là có một object được tạo ra với nhiều bước phức tạp. Ví dụ như xây nhà phải xây cửa sổ, xây móng, xây cửa chính, .... Ý tưởng: 1. Tạo ra một Class HouseBuilder 2. Định nghĩa các method build_window, build_door và quan trọng nhất là hàm build 3. Mỗi method build_window sẽ return self. Code: class House: def __init__(self): # Khai báo sẵn các thuộc tính để dễ quản lý self.window = None self.door = None def __str__(self): # Thêm hàm này để in ra kết quả cho trực quan return f"House with Window: {self.window}, Door: {self.door}" class HouseBuilder: def __init__(self): # Builder tự khởi tạo đối tượng thay vì nhận từ bên ngoài self.house = House() def...