Another helpful post from Jeremy Miller, this time on Orthongonal Code. He gives a real example of unmaintainable code, and then illustrates the effects of applying the following principles to the code:
- encapsulation
- the Law of Demeter
- Single Responsibility Principle
- loose coupling
- dependency inversion
- open/closed principle
- testability