设计模式-三大分类

时间:2024-07-20 07:13:43

软件七大设计原则

1、单一职责

定义:每个类应该只有一个引起它变化的原因。

解释:一个类只负责一个功能,这样可以减少类之间的耦合,提高系统的可维护性和可扩展性。

2、开闭原则

定义:软件实体(类、模块、函数等)应该对扩展开放,对修改关闭。

解释:应通过扩展来实现新的功能,而不是通过修改现有代码来实现,这样可以减少引入新的错误。

3、里式替换原则

定义:子类对象必须能够替换父类对象,并且不会导致程序出错。

解释:子类应当能够替换其父类,且子类行为应与父类一致,这样才能保证系统的正确性和稳定性。

4、依赖倒转原则

定义:高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节,细节应该依赖抽象。

解释:通过依赖抽象(接口或抽象类)而不是具体实现,可以提高系统的灵活性和可扩展性。

5、接口隔离原则

定义:客户端不应该依赖于它不使用的接口。

解释:应当为每一个类提供专门的接口,而不应该强迫类去实现一些用不到的接口。

6、迪米特法则

定义:一个对象应当对其他对象有最少的了解,只与直接的朋友通信。

解释:减少对象之间的耦合,提高系统的可维护性。

7、合成复用原则

定义:优先使用组合而不是继承来实现代码复用。

解释:使用组合可以减少类之间的耦合,提高系统的灵活性。

三大类

一:创建者模式(5种)

1、单例模式

2、原型模式

3、工厂方法

4、抽象工厂

5、建造者

二:结构型模式(7种)

1、代理

2、适配器

3、桥接

4、装饰

5、外观

6、享元

7、组合

三:行为型模式(11种)

1、模版方法

2、策略

3、命令

4、职责链

5、状态

6、观察者

7、中介者

8、迭代器

9、访问者

10、备忘录

11、解释器