: Buyer Payment Scheduler
Các ngữ cảnh nên dùng mẫu Composite
Bö mön Cöng nghï phền mï̀m Khoa CNTT
ĐH Bach Khoa Tp.HCM
Mön Phân tích & Thiết kế hướng ₫ối tượng dùng UML
Slide 241
Mục tiêu : Cung cấp ₫ối tượng ₫ại diện cho một ₫ối tượng khác ₫ể hỗ trợ
hoặc kiểm soát quá trình truy xuất ₫ối tượng ₫ó. Đối tượng thay thế gọi là Proxy.
Nhu cầu áp dụng :
Những ₫ối tượng lớn khi khởi tạo sẽ tốn nhiều tài nguyên, do ₫ó nên trì hoãn thời ₫iểm khởi tạo thực sự các ₫ối tượng này. Trong thời gian trì hoãn, proxy
₫óng vai trò thay thế₫ối tượng.
Chương trình muốn truy xuất một ₫ối tượng ở không gian ₫ịa chỉ khác. Proxy thay thế₫ối tượng ở máy remote.
Đối tượng cần ₫ược bảo mật khỏi tương tác trực tiếp với client. Client chỉ tác
₫ộng ₫ược lên Proxy, Proxy chuyển yêu cầu Client xuống ₫ối tượng thực hiện yêu cầu.
Chương trình muốn bổ sung một số thao tác kiểm soát lên một ₫ối tượng. Proxy ₫óng vai trò ₫ối tượng kiểm soát.
Proxy
Chương 10 : Các mẫu cấu trúc
Remote proxy : cung cấp ₫ối tượng ₫ại diện (local) cho một ₫ối tượng
phân bố (nonlocal) khác (ví dụ RMI, JINI).
Virtual proxy : cung cấp ₫ối tượng ₫ại diện cho ₫ối tượng lớn khi khởi tạo tốn nhiều tài nguyên. Mục ₫ích ₫ể trì hoãn thời ₫iểm tạo ₫ối tượng lớn. (Ví dụ₫ối tượng hình ảnh trong một chương trình xử lý ₫ồng thời nhiều hình ảnh).
Protection proxy : cung cấp ₫ối tượng ₫ại diện cho một ₫ối tượng khác
cần ₫ược bảo mật từ bên ngoài. Ví dụ các KernelProxies cung cấp truy
xuất ₫ến Kernel của hệ₫iều hành.
Smart proxy : cung cấp ₫ối tượng ₫ại diện ₫ể bổ sung một số thao tác khi có truy xuất ₫ến ₫ối tượng thực. Ví dụ proxy kiểm tra số tham khảo
₫ến ₫ối tượng, proxy thực hiện việc load persistent object trong lần tham