Sometimes you just need to create new objects. The factory pattern can help encapsulate the code to do that, so you can make changes in the types of objects without worrying about impacting your other code.
- We've talked about programming … to interfaces, not implementations. … When we program to an implementation, … we get locked into concrete types, … and more importantly, our code will require changes … if our set of concrete types ever gets extended. … It might seem interesting that by using the new operator, … we're forcing ourselves into a concrete implementation. … Like here where we assign duck … to a new mallard duck. … We'd like to use an interface like duck … as the type for the variable, … but ultimately, we have to create a concrete type, … like mallard duck, to create a duck object. … Quite often, we end up writing code like this. … Here we have a duck variable … and we use conditional logic … to pick the concrete type of the duck. … For instance, if we're at a picnic, … we create a mallard duck, … and if we're hunting, … then we create a decoy duck, … and if this is a bathtub, we create a rubber duck. … With this code, we're making runtime decisions … about which class to instantiate. …
- 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.