This video formally introduces the strategy pattern. See how this pattern makes use of both inheritance and composition.
- [Instructor] We had an initial design … for a duck simulator that used inheritance, … but we quickly ran into problems with this design. … We were having to change a lot of code in the subclasses … when we added new ducks and we were duplicating code. … We fixed the design by pulling out … the flying and quacking behaviors … and composing those behaviors with the ducks, … that way each duck could use the behaviors … that is right for that duck. … The class design that we created for the duck simulator … is an implementation of the strategy pattern. … Let's take a look at the class diagram … for the strategy pattern. … We have an inheritance hierarchy … that defines the type of the objects … that need a behavior and we have a HASA relationship … between those objects and their behaviors. … These behaviors can be anything. … Any algorithm that an object might need to perform. … By moving these algorithms out … from the main inheritance hierarchy, … we get the benefit of being able to choose …
- 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.