Introduction

Heads up... You're reading this book for free, with parts of this chapter shown beyond this point as scrambled text.

In the last three lessons, you learned about aggregation and composition — two different approaches that go hand-in-hand to define your models and the different parts of a system. You then learned about base classes and different techniques related to inheritance that help you define operations in a cleaner way. In the third lesson, “Design Patterns”, you learned about design patterns by looking at what they are and which software engineering challenges they solve.

In all three lessons, you took small steps to write cleaner code: Code that’s easier to maintain, easy to understand by others and focuses on an operation.

In this lesson, you’ll understand more about the criteria that will help you judge, on your own, if you need to refactor your code to simplify it. To do this, you’ll focus on SOLID: A famous set of principles that will help you design your software to be easier to read and maintain from day one.

See forum comments
Download course materials from Github
Previous: Quiz: Design Patterns Next: Instruction 1