通用的软件设计原则:
封装变化的内容,找到程序中的变化内容,并将其与不变的内容区分开。
该原则的主要目的是将变更造成的影响最小化。
方法层面的封装;
类层面的封装;
当你需要两个类进行合作时,可以让其中一个类依赖于另一个类。
但,可以用另外一种更灵活的方式来设置对象之间的合作关系。
SOLID是让软件设计更易于理解、更加灵活和更易于维护的五个原则的简称。
有原则是好事,但也要时刻从实用的角度来考量。
单一职责原则Single Responsibility Principle,
开闭原则Open、closed Principle,
里氏替换原则Liskov Substitution Principle,
(当扩展一个类时,要能在不修改客户端代码的情况下将子类的对象作为父类对象进行传递)
接口隔离原则Interface Segregation Principle,
客户端不应被强迫依赖于其不使用的方法。
依赖倒置原则Dependency Inversion Principle,
高层次的类不应该依赖于低层次的类。两者都应该依赖于抽象接口。