The design principle of encapsulating the concept that varies informs many design patterns. In this video, separate what varies to make it easier to add new duck behaviors to the example.
- [Instructor] Let's take a look … at some sample code to demonstrate … how we implement our new design … and pull out and separate what varies … in our code. … For this sample code, we'll just Java. … We'll be showing just a few snippets of code. … To see the full working examples, … download the exercise files. … We'll begin by looking at the flying … and quacking behaviors we've pulled out from the ducks. … Recall one of the design principles we've talked about. … Program to an interface, not an implementation. … For both our behaviors, … we'll define interfaces that all behaviors will implement. … So, all fly behaviors will implement … the flyBehavior interface. … For example, we might implement a FlyWithWings behavior … that implements regular flying … and a FlyNoWay behavior … that implements no flying for a duck that can't fly. … Likewise all quack behaviors will implement … the quack behavior interface. … We might implement quacking behaviors … like regular quaking for a real duck …
- 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.