Separating responsibilities in your code is a great technique to limit the impact of change. There's a principle that can guide you to do just that.
- [Narrator] Let's think about responsibility … for a minute. … One thing to remember about giving … responsibilities to a class, … is that for every additional responsibility, … a class has another reason it might have … to change in the future. … So by giving a class multiple responsibilities … we give the class more than one reason … it might have to change. … And we know we want to minimize change … where we can. … This brings us to another design principle. … The Single Responsibility Principle. … Which says that a class should have … only one reason to change. … Adhering to this principle minimizes … the chances that a class is going to need … to change in the future. … Now let's think about collections and iterators. … If we allow a class to handle both … the responsibilities of managing a collection, … and managing the iteration, … then we have two areas of potential change. … That's why we separate the iteration … responsibility into its own class. … Now be careful. … We're humans, and in general, …
- 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.