Mentallog12 10

471 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
471
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
12
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Mentallog12 10

  1. 1. Mentallog week 8 Giới thiệu về Observer pattern và Mediator pattern Nguyễn Đức Phú
  2. 2. Nội dung bài thuyết trình Khái niệm về design pattern và phân loại design pattern Ý tưởng cơ bản và những vấn đề liên quan của: Observer pattern Mediator pattern So sánh 2 mẫu thiết kế trên, phân tích điểm mạnh, yếu. Kết luận      
  3. 3. Mentallog week 8 1.Giới thiệu về design pattern 2.Observer pattern 3.Mediator pattern 4.So sánh 2 pattern 5.Kết luận
  4. 4. Design pattern là gì? Là những giải pháp thiết kế có thể được sử dụng lại Giải quyết những vấn đề xảy ra thường xuyên Không phải là “code“ mà là “ý tưởng“. Giải quyết 1 loại vấn đề trong nhiều ngữ cảnh    
  5. 5. Các loại Design Pattern Design pattern category
  6. 6. Mentallog week 8 1.Giới thiệu về design pattern 2.Observer pattern 3.Mediator pattern 4.So sánh 2 pattern 5.Kết luận
  7. 7. Ví dụ về Observer pattern
  8. 8. Ví dụ về Observer pattern
  9. 9. Ví dụ của Observer pattern Vấn đề của code trên là gì? Khi thêm 1 thiết bị display mới, phải thay đổi code Đối tượng WeatherData “phải“ nhìn thấy các đối tượng display => Không thể xây dựng được API.     Giải pháp:  Observer pattern
  10. 10. Ý tưởng của Observer Pattern  notify Change State Subscriber 1 (Observer) notify Publisher (Observable) Update Update Subscriber 2 notify Update Attach/detach Subcriber 4 Subscriber 3
  11. 11. Mô hình của Observer Pattern
  12. 12. Những vấn đề liên quan(1) Có nhiều subject và nhiều observer Đối tượng nào kích hoạt update? Đảm bảo các trạng thái của subject ổn định trước khi thông báo    
  13. 13. Những vấn đề liên quan (2) Chỉ định những phần mà observer quan tâm Đóng gói logic giao tiếp phức tạp Những pattern liên quan: Factory, Template, Mediator Ứng dụng thực tế: Model MVC, Event Management,...    
  14. 14. Mentallog week 8 1.Giới thiệu về design pattern 2.Observer pattern 3.Mediator pattern 4.So sánh 2 pattern 5.Kết luận
  15. 15. Ví dụ về Mediator Pattern
  16. 16. Ví dụ về Mediator Pattern
  17. 17. Mô hình của Mediator pattern
  18. 18. Những vấn đề liên quan Abstract mediator Tương tác giữa mediator và colleagues Sự phức tạp của đối tượng Mediator Thường được sử dụng trong User interface và Chat application    
  19. 19. Mentallog week 8 1.Giới thiệu về design pattern 2.Observer pattern 3.Mediator pattern 4.So sánh 2 pattern 5.Kết luận
  20. 20. Thảo luận Observer pattern được dùng khi nào? Mediator pattern được dùng khi nào? Ưu, nhược điểm của observer pattern? Ưu, nhược điểm của mediator pattern? Cách khắc phục?     
  21. 21. Mentallog week 8 1.Giới thiệu về design pattern 2.Observer pattern 3.Mediator pattern 4.So sánh 2 pattern 5.Kết luận
  22. 22. Kết luận Observer pattern tập trung thiết kế cơ chế : quan sát (observer) và được quan sát (observable) Mediator pattern tập trung thiết kế cơ chế điều hoà giao tiếp phức tạp giữa các đối tượng. Điểm mạnh của 2 pattern này là đảm bảo sự độc lập giữa các lớp. Điểm yếu của Observer pattern : quan hệ nhiều – nhiều. Điểm yếu của Mediator pattern: Sự phức tạp của lớp Mediator.     

×