Ok, lấy ví dụ về DP phổ biến Factory Pattern :
Em có 3 loại thẻ : Agribank, Mbbank, VIBbank cùng có chung các thuộc tính : name, status, và method : draw(), transfer(). deposit(), payment()
Em có thể tạo 3 class Agri, Mb, VIB ok không sai
Nhưng nếu dùng Factory : tạo 1 interface chung cho 3 class Agri, MB, VIB,.. có đủ thuộc tính(em k sure vì chưa thấy ai đặt thuộc tính trong interface) và các abstract method, sau đó viết 3 class Agri, MB, VIB..
Vậy vấn đề xảy ra : khi có 1 class VPbank mới, em chỉ cần tạo thêm class VP implement interface kia phải không ạ thay vì tạo 1 class hoàn toàn mới
Cuối cùng : Sự khác biệt Factory và Abstract Factory là gì ạ. 2 pattern này có nhất thiết luôn song hành cùng nhau