🌿 What?

Abstract Factory có thể hiểu là pattern thiết kế cho những phần mang tính trừu tượng mà không cần chỉ ra những lớp cụ thể.

🌿 Problem

Ví dụ chúng ta build một hệ thống giả lập cửa hàng nội thất. Trong đó có nhiều món đồ nội thất mang nhiều phong cách khác nhau.

Giờ phải kiếm cách gì tạo ra được tất cả các nội thất và quan trọng khi thêm mới(nội thất hoặc phong cách) đều không ảnh hưởng đến code base.

🌿 Solution

Không cần quan tâm cụ thể hình thù của nội thất như thế nào, cứ thiết kết ra các interface liệt kê ra những phương thức chung của objects. Còn chi tiết thì sẽ được định nghĩa trong từng Class cụ thể.

🌿 References