Design Pattern (DP)
Các khái niệm chung
Design Pattern là gì?
- Design Pattern là giải pháp điển hình (chung) cho các vấn đề thường gặp trong thiết kế phần mềm.
- Design Pattern giống như bản thiết kế được tạo sẵn mà chúng ta có thể tùy chỉnh để giải quyết vấn đề thiết kế thường gặp trong code của mình.
- Chúng ta không thể tìm một design pattern và sao chép nó vào code của mình(design pattern không phải là các thư viện có sẵn).
- Design Pattern không phải là một đoạn code cụ thể, mà là một khái niệm chung để giải quyết một vấn đề cụ thể.
- Chúng ta có thể làm theo các chi tiết của Pattern và triển khai một giải pháp phù hợp với thực tế chương trình của mình.
Phân loại Design Pattern
- Các design pattern khác nhau về độ phức tạp, mức độ chi tiết, quy mô áp dụng cho hệ thống được thiết kế.
- Một số pattern cơ bản và cấp thấp thường chỉ áp dụng cho một vài ngôn ngữ lập trình duy nhất.
- Các pattern phổ biến và cao cấp là các mẫu kiến trúc. Chúng ta có thể triển khai DP này cho bất kì ngôn ngữ nào.
- Không giống như DP thấp cấp, các DP này có thể sử dụng để thiết kế toàn bộ ứng dụng.
Thông thường các DP được phân loại theo mục đích sử dụng của chúng. Tôi sẽ đề cập đến 3 nhóm DP chính:
- Creational patterns: Cung cấp c chế khở tạo đối tượng giúp tăng tính linh hoạt và khả năng tái sử dụng code.
- Structural patterns: Lắp ghép các đối tượng và lớp thành các cấu trúc lớn hơn, đồng thời giữ cho các cấu trúc này linh hoạt và hiệu quả hơn.
- Behavioral patterns: Đảm bảo giao tiếp hiệu quả và phân công vai trò giữa các đối tượng