Tải bản đầy đủ (.pdf) (29 trang)

Bài giảng Kiến trúc phần mềm: Mẫu thiết kế - Trần Minh Triết

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1007.8 KB, 29 trang )

Trường Đại học Khoa Học Tự Nhiên
Khoa Công Nghệ Thông Tin
Bộ môn Công Nghệ Phần Mềm

CTT526 - Kiến trúc phần mềm

Mẫu thiết kế
Creational Patterns
PGS.TS. Trần Minh Triết


Version 1.0

CuuDuongThanCong.com

/>

Mở đầu
 Ý tưởng về mẫu thiết kế
 Sự ra đời của ý tưởng về mẫu thiết kế
 23 mẫu thiết kế của nhóm GoF
 Nhóm Creational Pattern
 Nhóm Behavioral Pattern
 Nhóm Structural Pattern
 Một số quan điểm về cách vận dụng mẫu thiết kế
 …
 …
 Một số nguyên lý cơ bản của lập trình hướng đối tượng
2
CuuDuongThanCong.com


/>

Mẫu thiết kế trong nhóm
Creational Pattern






Mẫu Factory
Mẫu Abstract Factory
Mẫu Builder
Mẫu Prototype
Mẫu Singleton

12/09/201
2
CuuDuongThanCong.com

3
/>

Mẫu Factory

[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented
12/09/201
4
Software, Addison-Wesley]
2

CuuDuongThanCong.com

/>

Mẫu Factory

12/09/201

5

[Christopher G. Lasater
(2007). Design Patterns, Wordware Publishing, Inc.]
2
CuuDuongThanCong.com

/>

Mẫu Factory

[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented
12/09/201
6
Software, Addison-Wesley]
2
CuuDuongThanCong.com

/>

Mẫu Factory


[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented
12/09/201
7
Software, Addison-Wesley]
2
CuuDuongThanCong.com

/>

Mẫu Factory

12/09/201

8

[Christopher G. Lasater
(2007). Design Patterns, Wordware Publishing, Inc.]
2
CuuDuongThanCong.com

/>

Thảo luận
 Trong những tình huống nào nên nghĩ đến mẫu
Factory?
 Làm cách nào để xác định muốn tạo ra sản phẩm loại
nào từ Factory?
 Làm cách nào để tạo lập một sản phẩm theo yêu cầu?
 Các biến thể?


12/09/201
2
CuuDuongThanCong.com

9
/>

Mẫu Prototype

[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented
12/09/201
10
Software, Addison-Wesley]
2
CuuDuongThanCong.com

/>

Mẫu Prototype

12/09/201

11

[Christopher G. Lasater
(2007). Design Patterns, Wordware Publishing, Inc.]
2
CuuDuongThanCong.com

/>


Mẫu Prototype

[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented
12/09/201
12
Software, Addison-Wesley]
2
CuuDuongThanCong.com

/>

Thảo luận
 Trong những tình huống nào nên sử dụng mẫu
Prototype
 Có phải chỉ sử dụng mẫu này trong quá trình tạo lập?
 Những vấn đề khác?

12/09/201
2
CuuDuongThanCong.com

13
/>

Mẫu Builder

[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented
12/09/201
14

Software, Addison-Wesley]
2
CuuDuongThanCong.com

/>

Mẫu Builder

12/09/201

15

[Christopher G. Lasater
(2007). Design Patterns, Wordware Publishing, Inc.]
2
CuuDuongThanCong.com

/>

Mẫu Builder

12/09/201

16

[Christopher G. Lasater
(2007). Design Patterns, Wordware Publishing, Inc.]
2
CuuDuongThanCong.com


/>

Mẫu Builder

[Christopher G. Lasater
(2007). Design Patterns,
12/09/201
Wordware Publishing,
Inc.]
2
CuuDuongThanCong.com

17
/>

Mẫu Builder

[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented
12/09/201
18
Software, Addison-Wesley]
2
CuuDuongThanCong.com

/>

Thảo luận
 Những tình huống nào nên dùng mẫu Builder?
 Cách xây dựng các đối tượng thành phần?
 Những vấn đề khác


12/09/201
2
CuuDuongThanCong.com

19
/>

Mẫu Abstract Factory

[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented
12/09/201
20
Software, Addison-Wesley]
2
CuuDuongThanCong.com

/>

Mẫu Abstract Factory

12/09/201

21

[Christopher G. Lasater
(2007). Design Patterns, Wordware Publishing, Inc.]
2
CuuDuongThanCong.com


/>

Mẫu Abstract Factory

[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented
12/09/201
22
Software, Addison-Wesley]
2
CuuDuongThanCong.com

/>

Mẫu Abstract Factory

12/09/201

23

[Christopher G. Lasater
(2007). Design Patterns, Wordware Publishing, Inc.]
2
CuuDuongThanCong.com

/>

Mẫu Abstract Factory

12/09/201


24

[Christopher G. Lasater
(2007). Design Patterns, Wordware Publishing, Inc.]
2
CuuDuongThanCong.com

/>

Thảo luận
 Những tình huống nào nên sử dụng mẫu Abstract
Factory?
 Abstract Factory với Factory và Builder?
 Những vấn đề khác

12/09/201
2
CuuDuongThanCong.com

25
/>

×