Sơ đồ lớp mẫu Facade

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Phát triển mẫu thiết kế phần mềm và ứng dụng (Trang 27 - 29)

 Facade (MortgageApplication)

 Có thể xem nhƣ các lớp hệ thống con mà chịu trách nhiệm đối với các yêu cầu đến nó.

 Trình khác uỷ nhiệm yêu cầu tới một đối tƣợng của hệ thống con

 Cài đặt chức năng của hệ thống con

 Giữ handle làm việc bằng đối tƣợng Facade

 Không có một kiến thức gì về Facade và giữ tham chiếu đến nó.

Abstract Factory có thể đƣợc sử dụng cùng với Facade để cung cấp một giao diện cho việc tạo hệ thống con một cách độc lập hệ thống con. Abstract Factory cũng có thể đƣợc sử dụng nhƣ một sự thay thế cho Facade để ẩn các lớp nền đặc biệt.

Mediator tƣơng tự nhƣ Facade ở chổ trừu tƣợng chức năng của một lớp đã tồn tại.Tuy nhiên mục đích của Mediator là trừu tƣợng một cách chuyên quyền sự giao tiếp giữa đối tƣợng cộng tác, thƣờng chức năng trung tâm không thuộc về bất kỳ đối tƣợng cộng tác nào. Một đối tƣợng cộng tác với Mediator đƣợc nhận và giao tiếp với mediator thay vì giao tiếp với nhau một cách trực tiếp. Trong hoàn cảnh nào đó, Facade chỉ đơn thuần là trừu tƣợng giao diện cho một một đối tƣợng hệ thống con để làm nó dễ sử dụng hơn, nó không định nghĩa một chức năng mới và lớp hệ thống con không hề biết gì về nó.

Thƣờng thì một đối tƣợng Facade là đủ. Do đó đối tƣợng Facade thƣờng là Singleton.

1.3.2.6. Flyweight

Một vài ứng dụng có thể đƣợc lợi từ việc sử dụng các đối tƣợng xuyên suốt thiết kế của chúng, nhƣng một cài đặt không tốt sẽ cản trở điều đó.Trong tình huống này chúng ta sẽ dùng mẫu thíêt kế Flyweight để giải quyết.

Định nghĩa: mẫu thiết kế Flyweight là mẫu thiết kế đƣợc sử dụng việc chia xẻ để trợ giúp một lƣợng lớn các đối tƣợng một cách hiệu quả.

Việc sử dụng mẫu này cần chú ý rằng :các hiệu ứng của Flyweight pattern đòi hỏi rất nhiều vào việc nó đƣợc sử dụng ở đâu và sử dụng nó nhƣ thế nào. Sử dụng Flyweight pattern khi tất cả cá điều sau đây là đúng:

 Một ứng dụng sử dụng một lƣợng lớn các đối tƣợng.

 Giá thành lƣu trữ rất cao bởi số lƣợng các đối tƣợng là rất lớn.

 Hầu hết trạng thái của các đối tƣợng có thể chịu tác động từ bên ngoài.

 Ứng dụng không yêu cầu đối tƣợng đồng nhất. Khi các đối tƣợng flyweight có thể bị phân tách, việc kiểm tra tính đồng nhất sẽ trả về đúng cho các đối tƣợng đƣợc định nghĩa dựa trên các khái niệm khác nhau.

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Phát triển mẫu thiết kế phần mềm và ứng dụng (Trang 27 - 29)

Tải bản đầy đủ (PDF)

(113 trang)