软件研发

软件设计模式的分类有哪些

2023-12-28 15:45:11 | 来源:企业IT培训

软件设计模式可以分为三大类,共23种。

1、创建型模式:包括单例模式、抽象工厂模式、建造者模式、工厂模式、原型模式。

2、结构型模式:包括适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式。

3、行为型模式:包括模板方法模式、命令模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式、状态模式、策略模式、责任链模式、访问者模式。

这些设计模式在不同的场景下都有其独特的适用性和应用价值,根据具体需求选择合适的设计模式可以大大提高软件开发的效率和质量。

除了上述三大类,还有一些其他的分类方式,例如:

1、根据目的分类:

结构模式:用于处理类和对象组合的结构设计。

行为模式:用于处理对象之间的交互和对象行为的策略。

2、根据使用频率分类:

常见模式:这些是日常开发中经常使用的模式,如单例模式、工厂模式等。

不常见模式:这些模式可能在特定场景或特定项目中才会用到。

3、根据涉及面分类:

全局设计模式:这些模式涉及整个系统的架构和设计,例如分层架构、MVC架构等。

局部设计模式:这些模式涉及类或对象之间的交互和关系,例如工厂模式、观察者模式等。

4、根据问题类型分类:

重复性问题解决模式:这些模式用于解决重复出现的问题,例如工厂模式、单例模式等。

特定问题解决模式:这些模式用于解决特定的问题或挑战,例如桥接模式、装饰器模式等。

5、根据目的和结构分类:

创建型模式:这类模式的目的是处理对象的创建。例如,工厂模式、原型模式等。

结构型模式:这类模式的目的是处理类或对象的组合关系。例如,适配器模式、装饰器模式等。

行为型模式:这类模式的目的是处理类或对象的行为和责任。例如,策略模式、观察者模式等。

6、根据使用频率分类:

常用模式:例如单例模式、工厂模式、代理模式等。

不常用或特殊场景下的模式:例如原型链模式、桥接模式等。

7、根据涉及面分类:

全局设计模式:影响整个系统的架构和设计的模式。例如,MVC(模型-视图-控制器)架构、MVVM(模型-视图-视图模型)架构等。

局部设计模式:影响类或对象之间的交互和关系的模式。例如,观察者模式、适配器模式等。