depend on things that change less often than you do. This short statement belies the sophistication of the idea, which is based on three simple truths about code: Some classes are more likely than others to have changes in requirements. Concrete classes are more likely to change than abstract classes. Changing a class that has many dependents will result in widespread consequences.





