SOLID的原则是帮助我们设计更好扩展的,更易维护的软件。
每个类应该只有一个唯一的理由被修改。
如果你的类有两种类型的用户。类中方法中可能会创建一些方法并重用,如果你为了一个用户的需求而改变了这些共用方法,可能会影响到另一个用户,最好为这两种类型的用户分成两个类。
对修改关闭,对扩展开放。
不要修改旧代码来实现新的功能,而是通过添加新的代码来实现功能。
在所有使用到父类的地方,使用子类对象进行替换应该不破坏其功能。
设计接口时,应该让其所有实现类都需要该接口的所有方法。这样它们才不会被接口中一些自己不需要的方法要求强制更改。
不要让高层方法依赖低层方法。高层和低层都应该依赖于抽象。而不是依赖于实现细节。
依赖抽象(能做什么),而不是怎么做(实现细节)。