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

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

Behavioral Pattern

 Mẫu Chain of Responsibility

 Mẫu Command

 Mẫu Interpreter

 Mẫu Iterator

 Mẫu Mediator

 Mẫu Memento

 Mẫu Observer

 Mẫu State

 Mẫu Strategy

 Mẫu Template Method

 Mẫu Visitor

pdf 27 trang phuongnguyen 8660
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Kiến trúc phần mềm - Bài 3: Mẫu thiết kế Behavioral Patterns - Trần Minh Triết", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng Kiến trúc phần mềm - Bài 3: Mẫu thiết kế Behavioral Patterns - Trần Minh Triết

Bài giảng Kiến trúc phần mềm - Bài 3: Mẫu thiết kế Behavioral Patterns - Trần Minh Triết
CTT526 - Kiến trúc phần mềm
Mẫu thiết kế
Behavioral Patterns
PGS.TS. Trần Minh Triết
tmtriet@fit.hcmus.edu.vn 
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
Version 1.0 CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu thiết kế trong nhóm 
Behavioral Pattern
 Mẫu Chain of Responsibility
 Mẫu Command
 Mẫu Interpreter
 Mẫu Iterator
 Mẫu Mediator
 Mẫu Memento
 Mẫu Observer
 Mẫu State
 Mẫu Strategy
 Mẫu Template Method
 Mẫu Visitor
2
[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented 
Software, Addison-Wesley][Christopher G. Lasat r (2007). Design Patterns, Wordware Publishing, Inc.]
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu Command
3
[Christopher G. Lasater (2007). Design Patterns, Wordware Publishing, Inc.]
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu Command
4
[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented 
Software, Addison-Wesley]
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu Command
5
[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented 
Software, Addison-Wesley]
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu Command
6
[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented 
Software, Addison-Wesley]
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu Command
7
[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented 
Software, Addison-Wesley]
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Thảo luận
 Các tình huống sử dụng thông thường?
 Plugin?
8
?
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu Template Method
9
[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented 
Software, Addison-Wesley]
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu Template Method
10
[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented 
Software, Addison-Wesley]
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu Template Method
11
[Christopher G. Lasater (2007). Design Patterns, Wordware Publishing, Inc.]
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu Template Method
12
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu Template Method
13
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Thảo luận
 Cần xác định rõ quy trình chuẩn gồm những bước xử lý 
nào (kể cả quy trình có rẽ nhánh và lặp)
 Cần xác định rõ những bước xử lý nào có thể cần thay 
đổi cách xử lý cụ thể (nhưng vẫn đảm bảo ý nghĩa trong 
quy trình của bước xử lý này)
 Danh sách các tham số và kiểu kết quả trả về của hàm 
xử lý cho mỗi bước
 Khi muốn thay đổi cách xử lý cụ thể của một bước 
trong quy trình đã được định nghĩa, không thay đổi 
cách xử lý của các bước khác thì sao?
14
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu Strategy
15
[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented 
Software, Addison-Wesley]
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu Strategy
16
[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented 
Software, Addison-Wesley]
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu Strategy
17
[Christopher G. Lasater (2007). Design Patterns, Wordware Publishing, Inc.]
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu Strategy
18
[Christopher G. Lasater (2007). Design Patterns, Wordware Publishing, Inc.]
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Thảo luận
 Có thể cho phép thay thế riêng lẻ từng thao tác xử lý cụ 
thể trong một quy trình xử lý tổng quát
 Plug-and-play
 Kết hợp mẫu Strategy vào mẫu Template Method?
19
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu State
20
[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented 
Software, Addison-Wesley]
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu State
21
[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented 
Software, Addison-Wesley]
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu State
22
[Christopher G. Lasater (2007). Design Patterns, Wordware Publishing, Inc.]
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Thảo luận
 Strategy và State?
 Trạng thái, chuyển đổi trạng thái
 Trạng thái thay đổi dẫn đến MỘT SỐ hành vi sẽ thay 
đổi cách xử lý cụ thể
 Tính che giấu thông tin và cách xử lý nội bộ trong đối 
tượng
23
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu Observer
24
[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented 
Software, Addison-Wesley]
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu Observer
25
[Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1995). Design Patterns - Elements of Reusable Object-Oriented 
Software, Addison-Wesley]
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mẫu Observer
26
[Christopher G. Lasater (2007). Design Patterns, Wordware Publishing, Inc.]
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Thảo luận
 Publish/Subscribe
 Notification
 Listener
 View
27
CuuDuongThanCong.com https://fb.com/tailieudientucntt

File đính kèm:

  • pdfbai_giang_kien_truc_phan_mem_mau_thiet_ke_behavioral_pattern.pdf