Design Pattern là gì

Mẫu thiết kế (Design Pattern / DP) là những giải pháp điển hình cho các vấn đề thường gặp trong thiết kế phần mềm - như các bản thiết kế sẵn mà bạn tùy chỉnh để giải quyết vấn đề lặp đi lặp lại trong code.

Điểm quan trọng

  • Khác với thư viện: không thể copy DP về và “paste” vào ứng dụng.
  • DP cho bạn tư tưởng chung để giải quyết vấn đề - mô tả giải pháp, đầu vào, đầu ra; phần triển khai tuỳ thuộc vào bạn.
  • Fun fact: DP không độc quyền của phần mềm - xuất hiện lần đầu trong cuốn “A Pattern Language: Towns, Buildings, Construction” của kiến trúc sư Christopher Alexander.
  • Cuốn tiên phong cho phần mềm: “Design Patterns: Elements of Reusable Object-Oriented Software” của Gang of Four (GoF) - 23 patterns chia vào 3 nhóm: khởi tạo, cấu trúc, hành vi.

Tại sao nên học Design Pattern?

Bạn có thể làm việc nhiều năm không cần biết một mẫu nào - thậm chí đang dùng một số mẫu mà không nhận ra. Nhưng nên học vì:

  1. Bộ công cụ giải pháp đã được kiểm chứng cho các vấn đề phổ biến. Kể cả khi không gặp vấn đề đó, học pattern dạy bạn cách giải quyết mọi loại vấn đề bằng nguyên tắc thiết kế hướng đối tượng.
  2. Ngôn ngữ chung với đồng nghiệp: chỉ cần nói “Chỗ này nên dùng Strategy”, “Chỗ kia nên là Observer” - tiết kiệm rất nhiều thời gian giải thích solution.

3 nhóm pattern trong sách

Liên quan