This video explores the challenge solution and shows how to pull out what varies to isolate areas of frequent change in the design.
(energetic music) … - [Narrator] Here's our solution to the challenge. … We've pulled out the different ways of sharing … into a separate family of classes that implement sharing … by texting, sharing by email, and sharing on social media. … This is our family of algorithms. … We've also added a property to the PhoneCameraApp superclass … that will be composed with a strategy that the user selects. … Now when the share method is called, … the super class is going to delegate sharing … to the user's preferred share strategy. … So this design allows us to more easily add, change, … and remove sharing strategies without have to modify … any code in the camera app or any code … in the concrete camera app classes. … …
- What are design patterns?
- Encapsulating code that varies with the Strategy pattern
- The limitations of inheritance
- Using the Adapter pattern
- Implementing the Observer pattern
- Extending behavior with composition and the Decorator pattern
- Encapsulating iteration with the Iterator pattern
- Object creation with the Factory Method pattern
- Using design principles to guide your object-oriented design
Skill Level Intermediate
1. Design Patterns
2. The Strategy Pattern
3. The Adapter Pattern
4. The Observer Pattern
Using the Observer pattern2m 23s
5. The Decorator Pattern
6. The Iterator Pattern
7. The Factory Patterns
- Mark as unwatched
- Mark all as unwatched
Are you sure you want to mark all the videos in this course as unwatched?
This will not affect your course history, your reports, or your certificates of completion for this course.Cancel
Take notes with your new membership!
Type in the entry box, then click Enter to save your note.
1:30Press on any video thumbnail to jump immediately to the timecode shown.
Notes are saved with you account but can also be exported as plain text, MS Word, PDF, Google Doc, or Evernote.