Lưu trữ cho từ khóa: software design

Giới thiệu Abstract Factory Pattern

Pattern thứ hai mà mình muốn giới thiệu chính là Abstract Factory. Nó có thể được hình dung như một nhà máy lớn, bên trong có các nhà máy nhỏ hơn sản xuất ra những loạt sản phẩm liên quan đến nhau.

Hãy lấy một hãng sản xuất ô tô làm ví dụ, chẳng hạn Hyundai. Họ có nhà máy, hoặc xưởng, chế tạo bánh xe: bánh của Azera, bánh của Sonata, bánh của Veloster, v.v… Đến lượt cửa xe, cũng có nhà máy chế tạo cửa Azera, cửa Sonata, cửa Veloster. Thân xe, động cơ, đèn, và các thành phần khác có những nhà máy chế tạo chúng.

Vậy phải tổ chức việc sản xuất ấy như thế nào? Cùng theo dõi tiếp nhé!

Tiếp tục đọc Giới thiệu Abstract Factory Pattern

Giới thiệu Singleton Pattern

Để bắt đầu cho loạt 26 pattern muốn giới thiệu, mình xin được chọn Singleton thay vì làm theo thứ tự ABC. Lý do là Singleton không quá khó để hiểu mà lợi ích đem lại không phải nhỏ, tuy nhiên, dường như nó đang bị xem nhẹ và có nhiều hiểu nhầm. Singleton xứng đáng nhận được nhiều sự trân trọng hơn.

Tiếp tục đọc Giới thiệu Singleton Pattern

Giới thiệu Design Pattern

Trong lúc nói chuyện với bạn bè, mình có bất chợt nhắc đến design pattern thì nhận được câu trả lời là “Chẳng nhớ gì, cũng chẳng áp dụng được gì”. Chính vì thế, mình muốn làm một loạt bài về chủ đề này để những bạn mới bắt đầu học có thể tham khảo, cũng như bản thân và anh em, bạn bè khi cần có thể tra cứu lại.

Các design pattern vô cùng hữu ích trong công việc phát triển phần mềm. Nếu mở code của framework hay thư viện ra đọc, bạn sẽ nhận ra họ đang áp dụng pattern này, pattern kia. Tuy nhiên, các chương trình học thường xem nhẹ sự cần thiết của chúng. Hồi mình còn đi học, nói chung chưa môn nào dạy cái này cả. Ở trường mình, có lẽ lứa của mình là lứa đầu tiên được cô giáo nhắc đến design pattern một cách nghiêm túc. Không biết các chương trình học bây giờ đã cập nhật thêm chưa.

Trên mạng mình cũng đã thấy một số trang nói về design pattern nhưng có những điểm mình chưa hoàn toàn đồng ý. Loạt bài này của mình có thể coi như một mảng màu khác góp vào bức tranh chung để các bạn có nhiều nguồn tiếp cận.

Tiếp tục đọc Giới thiệu Design Pattern