1
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM
O O CUI K
Môn học: MẪU THIẾT KẾ
Giảng viên hướng dẫn:
Ths. Trần Anh Dũng
Nhóm sinh viên thực hiện:
Phan Xuân Quang
:
20521008
Trần Văn Thiệt
:
20521956
Nguyễn Ngọc Trinh
:
20520824
Thành phố Hồ Chí Minh, tháng 06 năm 2023
2
LỜI CẢM ƠN
Nhóm em trân trọng cảm ơn thầy Trần Anh Dũng đã tạo điều kiện hướng dẫn
chúng em để chúng em có cơ hội tìm hiểu về môn học này. Chúng em cũng cảm ơn tất
cả các bạn cùng lớp đã chia sẻ những tìm hiểu kinh nghiệm về những kiến thức bổ
ích liên quan đến Mẫu thiết kế. Trải qua 14 tuần học cùng với những buổi seminar đầy
mới lạ đã cho chúng em cái nhìn chi tiết về các Mẫu thiết kế mới lạ hấp dẫn, để
chúng em sử dụng sau này. Chúng em tin rằng những kiến thức này sẽ hỗ trợ chúng
em trên con đường sự nghiệp sắp tới. Một lần nữa, cảm ơn thầy các bạn đã đồng
hành và hỗ trợ nhóm chúng em trong môn học này.
Thành phố Hồ Chí Minh, ngày 30 tháng 06 năm 2023
Đại diện nhóm
Phan Xuân Quang
3
NHẬN XÉT CỦA GIẢNG VIÊN
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
4
MỤC LỤC
LỜI CẢM ƠN ......................................................................................................... 2
NHẬN XÉT CỦA GIẢNG VIÊN ......................................................................... 3
DANH MỤC HÌNH ẢNH .................................................................................... 10
CHƯƠNG 1. KHÁI NIỆM .................................................................................. 13
1.1. GIỚI THIỆU DESIGN PATTERN ...................................................................... 13
1.2. LỢI ÍCH CỦA VIỆC SỬ DỤNG DESIGN PATTERN ............................................ 13
1.3. PHÂN LOẠI DESIGN PATTERN ...................................................................... 13
CHƯƠNG 2. CREATIONAL PATTERN ......................................................... 14
2.1. SINGLETON .................................................................................................. 14
2.1.1. Tổng quan ............................................................................................ 14
2.1.2. Motivation ............................................................................................ 14
2.1.3. Đặc điểm .............................................................................................. 15
2.1.4. Khả năng ứng dụng .............................................................................. 15
2.1.5. Hệ quả .................................................................................................. 16
2.1.6. Các mẫu liên quan ................................................................................ 16
2.2. FACTORY METHOD ...................................................................................... 16
2.2.1. Tổng quan ............................................................................................ 16
2.2.2. Motivation ............................................................................................ 16
2.2.3. Đặc điểm .............................................................................................. 17
2.2.4. Khả năng ứng dụng .............................................................................. 17
2.2.5. Hệ quả .................................................................................................. 18
2.2.6. Các mẫu thiết kế liên quan ................................................................... 18
2.3. ABSTRACT FACTORY ................................................................................... 18
2.3.1. Tổng quan ............................................................................................ 19
2.3.2. Motivation ............................................................................................ 19
2.3.3. Đặc điểm .............................................................................................. 20
2.3.4. Khả năng ứng dụng .............................................................................. 21
2.3.5. Hệ quả .................................................................................................. 21
2.3.6. Các mẫu thiết kế liên quan ................................................................... 22
2.4. BUILDER ...................................................................................................... 22
5
2.4.1. Tổng quan ............................................................................................ 22
2.4.2. Motivation ............................................................................................ 22
2.4.3. Đặc điểm .............................................................................................. 22
2.4.4. Khả năng ứng dụng .............................................................................. 23
2.4.5. Hệ quả .................................................................................................. 24
2.4.6. Các mẫu thiết kế liên quan ................................................................... 24
2.5. PROTOTYPE .................................................................................................. 24
2.5.1. Tổng quan ............................................................................................ 24
2.5.2. Motivation ............................................................................................ 24
2.5.3. Đặc điểm .............................................................................................. 25
2.5.4. Khả năng ứng dụng .............................................................................. 27
2.5.5. Hệ quả .................................................................................................. 27
2.5.6. Các mẫu thiết kế liên quan ................................................................... 28
CHƯƠNG 3. STRUCTURAL PATTERN......................................................... 29
3.1. ADAPTER ..................................................................................................... 29
3.1.1. Tổng quan ............................................................................................ 29
3.1.2. Motivation ............................................................................................ 30
3.1.3. Đặc điểm .............................................................................................. 30
3.1.4. Khả năng ứng dụng .............................................................................. 31
3.1.5. Hệ quả .................................................................................................. 31
3.1.6. Các mẫu thiết kế liên quan ................................................................... 32
3.2. BRIDGE ........................................................................................................ 32
3.2.1. Tổng quan ............................................................................................ 32
3.2.2. Motivation ............................................................................................ 32
3.2.3. Đặc điểm .............................................................................................. 33
3.2.4. Khả năng ứng dụng: ............................................................................. 34
3.2.5. Hệ quả .................................................................................................. 34
3.2.6. Các mẫu thiết kế liên quan ................................................................... 35
3.3. COMPOSITE .................................................................................................. 35
3.3.1. Tổng quan ............................................................................................ 36
3.3.2. Motivation ............................................................................................ 36
3.3.3. Đặc điểm .............................................................................................. 37