Tìm hiểu về Design Pattern – Code C++

 

Hi. Chào mừng các bạn ghé thăm blog với chủ đề : Tìm hiểu về Design Pattern.

Đối với một lập trình viên thì design pattern là kiến thức bạn cần phải nắm vững. 

Nó rất cần thiết cho bạn khi bạn có ý định xây dựng một phần mềm từ nguyên mẫu.

Design Pattern được gọi là các khuôn mẫu thiết kế, nó đóng vai trò như là bộ xương của một hệ thống phần mềm.

1.  Design Pattern là gì.

Tôi sẽ dùng bóng đá làm ví dụ minh họa cho Design Pattern trong lập trình. Giả sử một đội bóng đá đi thi đấu 😀 .

+ Kỹ thuật cơ bản: sút, truyền, đánh đầu, đảo bóng…                           <=>  kỹ thuật cơ bản trong lập trình.

+ Trang phục thi, luật lệ thi đấu, rồi quy tắc ứng xử …                          <=> coding style trong lập trình

+ Các hệ thống truyền hình quay phát, lưu giữ , bình luận…                 <=> Hệ thống quản lý code.

+ Kinh nghiệm phối hợp, thủ thuật tránh phạt góc, chắt chiu cơ hội…  <=>  Kỹ thuật tối ưu hóa trong code để chương trình tốt hơn.

+ Các vai trò cầu thủ trên như: Hậu vệ,  thủ môn, tiền đạo…                <=>  kỹ thuật lập trình module hóa, hoặc kỹ thuật lập trình cấu trúc.

Cuối cùng một điều quan  nữa trong một đội bóng đó là Sơ đồ chiến lược.

Nếu không có sơ đồ chiến lược, các bạn sẽ tưởng tưởng như sau:

+ Không biết nên sử dụng bao nhiêu hậu vệ, bao nhiêu tiền đạo, bao nhiêu tiền vệ, có cần trung vệ không, có cần tiền đạo cắm không.

+ Với đối thủ thì nên chơi công hay chơi phòng ngự, hay chơi song song….

+ Nên chơi bóng bổng hay bóng sệt.

Và Trải qua hàng chục năm người ta đúc kết và xây dựng nên được một số lượng các sơ đồ chiến thuật phù hợp cho bóng đá.

Ví dụ mô hình: 1 4 4 1 –  1 4 5 1 – 1 5 3 2….

Và các mô hình này đã được chứng minh là nó hiệu quả nhất, phù hợp nhất thường được chọn cho 1 trận đấu.

====> Kỹ thuật lập trình phần mềm CŨNG NHƯ VẬY

Trải qua nhiêu năm nghiên các kỹ sư phần mềm đã xây dựng được các khuôn mẫu lập trình tốt nhất để áp dụng.

Khuôn mẫu lập trình sẽ giúp các lập trình viên lựa chọn đề phù hợp với yêu cầu bài toán đặt ra.

Họ sẽ biết cách bố trí các lớp đối tượng ra sao.

Dùng bao nhiêu lớp trừu tượng, bao nhiêu lớp kế thừa, bao nhiêu lớp giao tiếp, bao nhiêu lớp kết nối.

Biết cách dùng các quan hệ phù hợp nhất các các lớp đối tượng.

Và các khuôn mẫu đó được gọi là Design Pattern.

2.  Vai trò của Design Pattern

Design Pattern được sử dụng nhằm giải quyết vấn đề:

+ Tối ưu hóa sản phẩm, dễ bảo trì sản phẩm, dễ nâng cấp sản phẩm,  đặc biệt là việc mở rộng sản phẩm.

+ Được coi như là mô hình cơ bản của dự án phần mềm, bộ khung của việc thiết kế.

+ Nhìn vào sơ đồ Design Pattern kỹ sư phần mềm sẽ hiểu được vai trò các lớp, mối quan hệ giữa các thành phần trong project.

+ Một dự án có thể sử dụng một hoặc nhiều mẫu design pattern khác nhau.

Nếu định hướng sai việc trong sử dụng mô hình Design Pattern sẽ vô tình làm dự án đi vào ngõ cụt.

Không thể mở rộng, nâng cấp, và vô tình sẽ phải đập đi làm lại theo mô hình mới.

3.  Phân loại Design Pattern

+ Bao gồm 23 loại Design Pattern cơ bản và chúng được chia thành 3 nhóm chính.

a. Nhóm Khởi Tạo: Creational Pattern.

+ Mẫu này giải quyết vấn đề khởi tạo các đối tượng, nó là khuôn mẫu cho việc khởi tạo các đối tượng đảm bảo độ tối ưu tốt nhất, chuẩn chỉnh nhất.

b. Nhóm Cấu Trúc: Structural Pattern.

+ Mẫu này giúp bạn tạo dựng các mối quan hệ cho các đối tượng một cách phù hợp nhất.

Ông A là đối tượng thuộc quản lý của ông B, hay chỉ là đối tượng mà ông B mượn để dùng.

c. Nhóm Hành Vi: Behavioral Pattern.

+ Nhóm này giải quyết các vấn đề về hành vi cho đối tượng.

 

Ok. Đó là lý thuyết cơ bản về design pattern.

Hãy đến với những bài chi tiết dưới đây để tìm hiểu lần lượt cụ thể về 23 mẫu design pattern.

 

 

 

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.