design patterns · the observer pattern provides an object design where subjects and observers are...

12
Design Patterns Observer Pattern Dr, Ayman Ezzat [email protected]

Upload: others

Post on 15-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Design Patterns · The Observer Pattern provides an object design where subjects and observers are loosely coupled. getTenwature() getHumidity() now This display Shows measuremen£s

Design Patterns

Observer Pattern

Dr, Ayman Ezzat

[email protected]

Page 2: Design Patterns · The Observer Pattern provides an object design where subjects and observers are loosely coupled. getTenwature() getHumidity() now This display Shows measuremen£s

Observer Pattern

Page 3: Design Patterns · The Observer Pattern provides an object design where subjects and observers are loosely coupled. getTenwature() getHumidity() now This display Shows measuremen£s

Weather Information machine

Page 4: Design Patterns · The Observer Pattern provides an object design where subjects and observers are loosely coupled. getTenwature() getHumidity() now This display Shows measuremen£s

Code look

Page 5: Design Patterns · The Observer Pattern provides an object design where subjects and observers are loosely coupled. getTenwature() getHumidity() now This display Shows measuremen£s

Lets implement

Concrete Class

Same update

Varies

Page 6: Design Patterns · The Observer Pattern provides an object design where subjects and observers are loosely coupled. getTenwature() getHumidity() now This display Shows measuremen£s

Observer Concept

Page 7: Design Patterns · The Observer Pattern provides an object design where subjects and observers are loosely coupled. getTenwature() getHumidity() now This display Shows measuremen£s

Observer Class Definition

Page 8: Design Patterns · The Observer Pattern provides an object design where subjects and observers are loosely coupled. getTenwature() getHumidity() now This display Shows measuremen£s

Power of loose couple

• The subject doesn’t know anything about the implementation except the interface they implement.

• Add new observers anytime.

• Minimum change if we added new observers.

• Change in observer or subject will never change in each other.

Page 9: Design Patterns · The Observer Pattern provides an object design where subjects and observers are loosely coupled. getTenwature() getHumidity() now This display Shows measuremen£s

Weather Information new design

Page 10: Design Patterns · The Observer Pattern provides an object design where subjects and observers are loosely coupled. getTenwature() getHumidity() now This display Shows measuremen£s

Code for subject

Page 11: Design Patterns · The Observer Pattern provides an object design where subjects and observers are loosely coupled. getTenwature() getHumidity() now This display Shows measuremen£s

Code for Observer

Page 12: Design Patterns · The Observer Pattern provides an object design where subjects and observers are loosely coupled. getTenwature() getHumidity() now This display Shows measuremen£s

Main Program