设计模式(一):设计原则、常用设计模式
1. 设计原则
SOLID原则-SRP单一职责原则:一个类或者模块只负责完成一个职责(或者功能)。
SOLID原则-OCP开闭原则:如果要添加一个新的功能,能够在已有代码基础上直接扩展代码,而不用修改已有代码就能实现,那么就符合“扩展开放、对修改关闭”原则。
SOLID原则-LSP里式替换原则:子类对象能够替换程序中父类对象出现的任何地方,并且保证原来程序的逻辑行为不变及正确性不被破坏。
SOLID原则-ISP接口隔离原则:客户端不应该被强迫依赖它不需要的接口。其中的“客户端”,可以理解为接口的调用者或者使用者。
SOLID原则-DIP依赖倒置原则:高层模块不要依赖低层模块。高层模块和低层模块应该通过抽象来互相依赖。除此之外,抽象不要依赖具体实现细节,具体实现细节依赖抽象。比如,编写的Web应用程序代码只需要部署在Tomcat容器下,便可以被Tomcat容器调用执行。按照之前的划分原则,Tomcat就是高层模块,我们编写的Web应用程序代码就是低层模块。Tomcat和应用程序代码之间并没有直接的依赖关系,两者都依赖同一个“抽象”,也就是Servlet规范。Servlet规范不依赖具体的Tomcat容器和应用程序的实现细节,而Tomcat容器和应用程序依赖Servlet规范。
KISS原则:尽量保持简单,需要逻辑简单、代码简洁。
YAGNI原则:不要去设计当前用不到的功能;不要去编写当前用不到的代码,即不要做过度设计。