设计模式七大设计原则
时间: 2023-11-15 14:58:52 浏览: 55
设计模式的七大设计原则分别是:
1. 单一职责原则(SRP):一个类只负责一个功能领域中的相应职责。
2. 开放-关闭原则(OCP):软件实体应该对扩展开放,对修改关闭。
3. 里氏替换原则(LSP):子类可以替换父类并且不影响程序的正确性。
4. 依赖倒转原则(DIP):高层模块不应该依赖低层模块,二者都应该依赖其抽象。
5. 接口隔离原则(ISP):客户端不应该依赖它不需要的接口。
6. 迪米特法则(LoD):一个软件实体应当尽可能少地与其他实体发生相互作用。
7. 合成/聚合复用原则(CARP):尽量使用合成/聚合,尽量不要使用继承。
相关问题
java 设计模式 七大原则
Java设计模式的七大原则包括:
1) 单一职责原则:一个类应该只有一个引起变化的原因,即一个类应该只有一个职责。
2) 接口隔离原则:客户端不应该依赖它不需要的接口。应该将接口细分为更小的接口,以便于客户端只需依赖于它们所需的接口。
3) 依赖倒转原则:高级模块不应该依赖于低级模块,二者都应该依赖于抽象。抽象不应该依赖于具体实现,而具体实现应该依赖于抽象。
4) 里氏替换原则:子类对象在任何场景下都可以替换父类对象,而不会引起任何错误或异常。
5) 开闭原则(OCP):软件实体(类、模块、函数等)应该对扩展开放,对修改关闭。即当需要添加新的功能时,应该通过扩展已有的代码来实现,而不是修改原有的代码。
6) 迪米特法则:一个对象应该尽可能少地与其他对象之间发生相互作用。
7) 合成复用原则:尽量使用对象组合,而不是继承来达到复用的目的。
以上是Java设计模式的七大原则。通过遵循这些原则,可以使代码更加灵活、可扩展、易维护,并提高代码的质量和可读性。
设计模式UML七大原则
设计模式UML七大原则是指在使用UML类图进行软件设计时需要遵循的七个原则,它们分别是开闭原则、里氏替换原则、依赖倒置原则、单一职责原则、接口隔离原则、迪米特法则和合成复用原则。这些原则可以帮助开发人员设计出更加灵活、可扩展、易维护的软件系统。
1. 开闭原则:对扩展开放,对修改关闭。
2. 里氏替换原则:子类可以替换父类并且不会影响程序的正确性。
3. 依赖倒置原则:高层模块不应该依赖低层模块,二者都应该依赖其抽象。
4. 单一职责原则:一个类只负责一个功能领域中的相应职责。
5. 接口隔离原则:客户端不应该依赖它不需要的接口。
6. 迪米特法则:一个对象应该对其他对象保持最少的了解。
7. 合成复用原则:尽量使用对象组合,而不是继承来达到复用的目的。
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![md](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)