design patterns i
play

Design Patterns I Encapsulation, Observer, and Decorator CS 370 SE - PowerPoint PPT Presentation

Design Patterns I Encapsulation, Observer, and Decorator CS 370 SE Practicum, Cengiz Gnay (Some slides courtesy of Eugene Agichtein and the Internets) CS 370, Gnay (Emory) Design Patterns I Spring 2014 1 / 9 Agenda Upcoming project


  1. Design Patterns I Encapsulation, Observer, and Decorator CS 370 SE Practicum, Cengiz Günay (Some slides courtesy of Eugene Agichtein and the Internets) CS 370, Günay (Emory) Design Patterns I Spring 2014 1 / 9

  2. Agenda Upcoming project milestones: Today: setup a meeting with Bob to get help about your progress 4/3 get ready to deploy! 4/10 in-class demo and functional prototype opens for testing CS 370, Günay (Emory) Design Patterns I Spring 2014 2 / 9

  3. Agenda Upcoming project milestones: Today: setup a meeting with Bob to get help about your progress 4/3 get ready to deploy! 4/10 in-class demo and functional prototype opens for testing Today: Some design patterns you can use. . . CS 370, Günay (Emory) Design Patterns I Spring 2014 2 / 9

  4. Patterns in Software Engineering CS 370, Günay (Emory) Design Patterns I Spring 2014 3 / 9

  5. Patterns in Software Engineering Don’t reinvent the wheel! Re-use existing patterns ! CS 370, Günay (Emory) Design Patterns I Spring 2014 3 / 9

  6. Entry/Exit Surveys Exit survey: Version control What’s the difference between centralized and distributed VCs? Which one is better and why? Does version control help you recover from a situation where you deleted some files by mistake? If so, explain how. Entry survey: Design Patterns How do you design software? What are some components that need designing in your project? What kind of patterns can be reused during the design of your project? If possible, give some examples. CS 370, Günay (Emory) Design Patterns I Spring 2014 4 / 9

  7. UML Cont'd: Use Cases & Stories • Sequence diagrams: • http://www.uml-diagrams.org/sequence-diagrams-examples.html • Use case diagrams: http://www.agilemodeling.com/artifacts/useCaseDiagram.htm • Use case tips: http://www.andrew.cmu.edu/course/90-754/umlucdfaq.html

  8. Click on me!

  9. Example: SimUDuck

  10. Recap: Strategy Pattern

  11. Your class hierarchies? Need some volunteers Tell us about your project classes: CS 370, Günay (Emory) Design Patterns I Spring 2014 6 / 9

  12. Your class hierarchies? Need some volunteers Tell us about your project classes: Uses inheritance for what? 1 CS 370, Günay (Emory) Design Patterns I Spring 2014 6 / 9

  13. Your class hierarchies? Need some volunteers Tell us about your project classes: Uses inheritance for what? 1 Would encapsulation be useful? 2 CS 370, Günay (Emory) Design Patterns I Spring 2014 6 / 9

  14. Example of the observer pattern!

  15. Observer Pattern

  16. Observer Pattern

  17. Observer Pattern

  18. Observer Pattern Defined

  19. Java Observable

  20. Observer pattern in your project? Can you think of a place that will be useful in your project? CS 370, Günay (Emory) Design Patterns I Spring 2014 8 / 9

  21. Observer pattern in your project? Can you think of a place that will be useful in your project? ◮ User notification ◮ Likes ◮ Button press in games CS 370, Günay (Emory) Design Patterns I Spring 2014 8 / 9

  22. Decorator Pattern

  23. Next week Scrum now! Next week: Javascript CS 370, Günay (Emory) Design Patterns I Spring 2014 9 / 9

Recommend


More recommend