"Mẫu thiết kế" là gì ? Để các bạn hình dung ra nó là gì thì chúng ta lướt qua một ví dụ thực tế. Giả sử bạn có một tô mì, và một nhiệm vụ bất khả thi là lấy một sợi mì bất kỳ với thời gian nhanh nhất, đảm bảo tính an toàn của sợi mì để không bị đứt. Thêm một yêu cầu nữa là phải đúng sợi mì cần lấy. Lúc này, bạn hãy hình dung code của bạn trong một project như tô mì đó. Mỗi function, mỗi câu lệnh như một sợi mì. Câu hỏi thực tế, khi bạn maintain một dự án, làm sao người mới có thể sữa chữa các lỗi của một tính năng, một hàm nào đó một cách nhanh chóng và không ảnh hưởng tới các chức năng, hàm khác.
Để trả lời cho câu hỏi hóc búa đó, Design Pattern sẽ có câu trả trả cho các trường hợp hóc búa đó.
Thời gian để nhận diện và tìm đoạn code lỗi nhanh, do mọi người đều code theo một chuẩn chung, có các quy chuẩn về concept. Chính vì thời gian nhận diện và tìm đoạn code nhanh nên sẽ dễ dàng sữa chữa và tiết kiệm thời gian tối ưu nhất.
Dễ dàng xác định đúng tính năng, đoạn code, hàm bị gặp lỗi. Đa phần nếu bị lỗi phát sinh trong các project có sử dụng Design Pattern là lỗi về logic trong phân tích mô hình nghiệp vụ (theo các chuyên gia trải qua hàng chục dự án lớn nhỏ của chúng tôi nhận xét)
Bạn không bị thắc cổ chai trong vận hành nhân sự maintain cho dự án phần mềm đang chạy. Vì nó có chuẩn trên từng concept hàm, câu lệnh nên khi vấn đề thiếu nhân lực trong việc vận hành dự án lớn đang chạy cũng có thể dễ dàng bổ sung nhân sự, chỉ cần bổ sung đúng nhân sự có kiến thức tốt về Pattern OOP là bộ máy của bạn đã vận hành trơn tru rồi.
Một chút thú vị trong công việc, khi chúng tôi nhận maintain một số dự án phần mềm từ các công ty, thi thoảng cũng có những project mà chúng tôi không thể tin vào mắt mình. Mỗi class, mỗi function nó được định nghĩa một cách rất tùy tiện và không hề tuân thủ bất kỳ một quy tắc nào. Những project như vậy chúng tôi hay gọi là project mì tôm. Và với những project như vậy, các tài liệu phân tích, thiết kế, yêu cầu và matter data hầu như không thể thiếu mới có thể vận hành trơn tru được. Tuy vậy, cũng mất rất nhiều thời gian để tái cơ cấu project, cũng cho thấy gần như xây dựng lại.
Eng Sub: