CSC 313 – Advanced Programming Topics. Lindsay Lohan Economy Studies investigated economy of...
-
Upload
june-harrison -
Category
Documents
-
view
216 -
download
1
Transcript of CSC 313 – Advanced Programming Topics. Lindsay Lohan Economy Studies investigated economy of...
LECTURE 6:OBSERVER PATTERN –OR– LINDSAY LOHAN, CSC GENIUS
CSC 313 – Advanced Programming Topics
Lindsay Lohan Economy
Studies investigated economy of celebrities Direct earnings from movies, music, TV,
ads Profits earned by her label, handlers,
etc. Photographers’ income for pictures on
TMZ When placed on cover, increase in
magazine sales $150+ million/year industry for top
celebrity
Something about Lindsay
Is it her singing?
Something about Lindsay
Is it her singing? Acting key to her
success?
Something about Lindsay
Is it her singing? Acting key to her
success? Her keen fashion
sense?
Something about Lindsay
Is it her singing? Acting key to her
success? Her keen fashion
sense? Long, slow, very
public total breakdown?
Something about Lindsay
Is it her singing? Acting key to her
success? Her keen fashion
sense? Long, slow, very
public total breakdown?
No! Really due to her mastery of Observer Pattern!
How Lindsay Does It
Millions interested in seeing this unfold Each and every mistake, Every outburst that she makes, And, of course, what or whom she is dating
Could follow her to be around for each event But may have job, school, or restraining
orders
Lindsay uses Observer Pattern for attention & $$$
Observer Pattern
Observers want update when subject changes Must manage this 1:many relationship Efficiently communicate all of these
updates
ConcreteSubject
stateChanged() : booleansetChanged() : void
Foundation of an Industry
Lindsay notifies paparazzi before going out With notice, photographers go to her
destination Take incriminating pictures of her doing
her thing With pictures takes, paparazzi notify
press Some published in magazines & used on
Dr. Phil Others will get posted to blogs “Private use” of individuals for some
pictures Entire crisis then unfolds for
enquiring minds
Textbook Observer Pattern
Readers sent People when it is printed Readers are observers Subject is People magazine (in this case) Whenever subject updated, observers
notified Magazines notified of pics paparazzi
took In this relationship, People is an observer Subject is each photographer
Textbook Observer Pattern
Paparazzi alerted by Lindsay before leaving Lindsay is ultimate subject (& pattern
master) Observers in this relationship are
Paparazzi
True Genius
Very efficient way for Lindsay to get money Also has benefit of limiting people
following her Readers notified of each and every
change In this adventure, readers observers
only Lindsay only a subject in this
implementation Magazines & photographers play
both roles Observer Pattern mastered for this to
work
True Genius
Observer Pattern == $$$ in my bank!
Observer Is Hollywood
Hollywood Principle:Don’t Call Us, We’ll Call You
If observers were to ask constantly“Are we there yet? Are we there
yet?” Really slow when many observers exist
Principle says to have subject send alerts Articles only after craziness on Lindsay’s
part When no DUIs, covers with Kate
Gosselin instead
Co-Dependent Relationships UML class diagrams with cycles are
problem Two classes inseparable no matter what
Classes completely dependent on each other Almost impossible to add or extend the
design Since both classes needed, reusing one
impossible
Replace Cycles With Observer Cycle still in UML class diagram…
Replace Cycles With Observer Cycle still in UML class diagram… … but now classes depend only on
interfaces Classes can be replaced at any time
Only requires that new class implement interface
Far easier to add or modify classes now
For Next Lecture
Read pages 56 – 69 in book Great… so how do we code the observer
pattern? Haven’t I seen this pattern before? How is it actually written in the real
world? Is it really this simple and powerful?