This chapter is from the book
- What are some alternatives for handling new requirements?
- What are the three fundamental principles proposed by the Gang of Four that guide how to anticipate change?
- What is the intent of the Strategy pattern?
- What are the consequences of the Strategy pattern?
- The Gang of Four suggests “considering what should be variable in your design.” How is this different from focusing on the cause of redesign?
- What is wrong with copy and paste?
- What is meant by “switch creep”?
- What are the advantages of the design patterns approach to handling variation?
- Why is the object-aggregation approach to inheritance superior to direct class inheritance for handling variation?
Opinions and Applications
- Have you ever been in a situation where you did not feel you could afford to anticipate change? What drove you that way? What was the result?
- Should you ever use switch statements? Why or why not?