TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TPHCM
KHOA CÔNG NGHỆ THÔNG TIN
PROTOTYPE
01
Mục đích sử dụng của mẫu
Tính chất đặc thù của mẫu
02
03
04
Những ưu khuyết điểm
của mẫu
05
06
NỘI DUNG BÁO CÁO
Cấu trúc, ý nghĩa, vai trò
từng lớp
Lĩnh vực áp dụng và
các hệ quả
Các mẫu thiết kế liên quan
1. MỤC ĐÍCH SỬ DỤNG CỦA MẪU
Giống như những mẫu thiết kế tạo lập
khác (Builder, Abstract Factory và Factory
Method), mẫu thiết kế Prototype ẩn việc
tạo đối tượng từ client.
Tuy nhiên, thay cho việc tạo ra một đối
tượng không được thiết lập, nó trả về một
đối tượng mới đã được thiết lập với các
giá trị mà nó đã sao chép từ một đối
tượng kiểu mẫu.
2. CẤU TRÚC, Ý NGHĨA, VAI TRÒ TỪNG LỚP
- Prototype (ColorPrototype):
khai báo một đối tượng cho
việc sao chép của nó.
- ConcretePrototype (Color):
thực thi một hoạt động cho
việc sao chép của nó.
- Client (ColorManager): tạo
ra một đối tượng mới bằng
việc yêu cầu một kiểu mẫu để
sao chép của nó.
3. NHỮNG TÍNH CHẤT ĐẶC THÙ CỦA MẪU
Chúng ta khơng biết được thông tin nội tại chi tiết bên trong
object và object có thể bị che dấu và chỉ cung cấp ra bên ngồi
một lượng thơng tin giới hạn. Do vậy ta khơng thể dùng tốn tử
new và sao chép những dữ liệu được object cung cấp (vốn
không đầy đủ) cho một object mới. Cách tốt nhất là để cho chính
object “mẫu” tự xác định thơng tin và dữ liệu sao chép.
4. LĨNH VỰC ÁP DỤNG VÀ CÁC HỆ QUẢ
- Không được sử dụng phổ biến trong việc xây dựng các ứng
dụng nghiệp vụ (business application). Nó thường được sử dụng
trong các kiểu ứng dụng xác định như đồ họa máy tính, CAD
(Computer Assisted Drawing), GIS (Geographic Information
Systems) và các trị chơi.
- Hệ quả: Giảm chi phí để tạo ra một đối tượng mới theo
"chuẩn", tức là việc này tăng Performance so với việc sử dụng
từ khóa new để tạo đối tượng mới.
5. NHỮNG ƯU KHUYẾT ĐIỂM CỦA MẪU
Ưu điểm
Thêm và loại bỏ lớp concrete lúc run-time.
Khởi tạo object mới bằng cách thay đổi một vài
attribute của object (các object có ít điểm khác biệt
nhau).
Khởi tạo object mới bằng cách thay đổi cấu trúc.
Giảm việc phân lớp.
Hỗ trợ nhiều cho công việc thiết kế giao diện.
Hiểu nhiều hơn về những nhu cầu của khách hàng.
5. NHỮNG ƯU KHUYẾT ĐIỂM CỦA MẪU
Khuyết điểm
Thiếu khả năng hiển thị q trình.
Địi hỏi những kĩ năng đặc biệt( khả năng tạo
mẫu nhanh).
Những hệ thống cỡ nhỏ hoặc trung bình
hoặc chỉ là một phần của hệ thống lớn (Giao
diện người dùng).
6. CÁC MẪU THIẾT KẾ LIÊN QUAN
tory
c
a
F
t
c
Abstra
ethod
M
t
c
a
r
Abst
Builder
n
Singleto
Bonus: Các ví dụ thực tế
Đó là những chương trình địi hỏi tính linh hoạt của q trình
phát triển bằng cách cho phép khách hàng tương tác và thử
nghiệm với một đại diện của sản phẩm.
Ví dụ:
Chọn ngoại thất xe (Màu sơn, mâm,…) trên các chương
trình/Web của các Showroom bán xe.
Chọn ngoại thất nhà (màu sơn, loại mái, loại gạch,..) của
các công ty bất động sản.
XIN CHÂN THÀNH
CẢM ƠN!