【设计模式】软件设计遵循——六大原则

252 阅读2分钟

软件设计遵循——六大原则

青叶.png

1)开闭原则

定义:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭 原则:用抽象构建框架,用实现扩展细节 优点:提高软件系统的可复用性和可维护性

2)里氏替换原则

定义:所有引用基类的地方必须能透明化地使用其子类的对象 原则:即子类可以扩展父类的功能,但是不能改变父类原有的功能。即在子类继承父类的时候,除了添加新的方法完成新增功能之外,尽量不要重写父类的方法;子类可以实现父类的抽象方法,但是不能覆盖父类的非抽象方法 优点:避免实现反向联动引发其他新的风险和震荡

3)接口隔离原则

定义:用多个专门的接口,而不使用单一的总接口,客户端(访问端或者请求调用)不应该依赖它不需要的接口 原则:注意适度原则,一定要适度;一个类对一个类的依赖应该建立在最小的接口上,建立单一接口,不要建立庞大臃肿的接口;尽量细化接口,接口中的方 法尽量少、尽量专注 优点:符合我们常说的高内聚低耦合的设计思想,从而使得类具有很好的可读性、可扩展性和可维护性

4)单一职责原则

定义:不要存在多于一个导致类变更的原因,即尽可能保持单一类的独立性 原则:一个类/接口/方法只负责一项职责,即不能复杂化一个类/接口/方法既要这样也要那样 优点:降低类的复杂度、提高类的可读性和可用性,提高系统的可维护性、降低变更引起的联动风险

5)依赖倒置原则

定义:高层模块不应该依赖底层模块,二者都应该依赖其抽象 原则:抽象不应该依赖细节(实现),细节(实现)应该依赖抽象;针对接口编程,不要针对实现编程 优点:可以减少类间的耦合性、提高系统稳定性,提高代码可读性和可维护性,可降低修改程序所造成的风险

6)迪米特法则(最少知道原则)

定义:一个对象应该对其他对象保持最少的了解,又叫最少知道原则,即尽量降低类与类之间的耦合 原则:强调只和朋友交流,不和陌生人说话,即尽可能在调用类的时候减少新建对象或者线程(包括内部类) 优点:降低类之间的耦合