Học Design Pattern: Flyweight Pattern – Khi Của Ít Nhưng Lòng Nhiều
Flyweight Pattern là cách diễn đạt Flexing khi mấy anh em dev không muốn dùng từ Cache – Caching – Memorization.
Flyweight Pattern là cách diễn đạt Flexing khi mấy anh em dev không muốn dùng từ Cache – Caching – Memorization.
Thay vì lãng phí thời gian và công sức để viết lại code từ đầu, AE Dev chúng ta hoàn toàn có thể sử dụng Adapter Pattern để biến hóa các module, hay framework bất đồng ngôn ngữ thành những người bạn tâm giao, tâm đầu ý hợp cho sản phẩm của mình. Việc này vừa giúp rút ngắn thời gian phát triển, vẫn đảm bảo được sự ổn định của hệ thống cũ và chắc chắn sẽ giúp bạn có thêm nhiều bài học mới về phát triển sản phẩm đấy 🙂
Hãy tưởng tượng bạn đang xây dựng một ứng dụng quản lý chi tiêu. Ứng dụng này cần truy cập đến một đối tượng duy nhất để đọc và ghi (ExpendManager) các chi tiêu của khách hàng. Nếu có nhiều Instance của object ExpendManager, có thể xảy ra xung đột và dữ liệu cấu hình bị sai lệch.
Trong nhiều tình huống, chúng ta cần tạo ra các đối tượng mới mà có nhiều điểm tương đồng với các đối tượng đã tồn tại. Việc tạo ra các đối tượng này từ đầu có thể tốn kém về thời gian và tài nguyên, đồng thời dễ gây ra sai sót nếu tạo chúng một cách thủ công.
Hãy tưởng tượng rằng bạn đang xây dựng một hệ thống để tạo ra các báo cáo khác nhau. Một báo cáo có thể bao gồm tiêu đề, nội dung văn bản, bảng biểu, biểu đồ và chân trang. Việc sắp xếp và định dạng các thành phần này có thể khác nhau tùy thuộc vào loại báo cáo (ví dụ: báo cáo tài chính, báo cáo hiệu suất).
Tưởng tượng rằng team bạn cần phát triển một tính năng trên ứng dụng di động dùng để hiển thị nhiều Component khác nhau trên 1 màn hình, các Component này được hiển thị theo thứ tự và số lượng bất kỳ, đồng thời các Component này còn thuộc nhiều Team phát triển khác nhau.