23种设计模式分类
2025-03-20 14:50:46 0 举报
AI智能生成
设计模式可以根据其目的和结构分为三类:创建型模式、结构型模式和行为型模式。创建型模式专注于对象的创建机制,以封装了解对象实例化过程,降低客户与具体类之间的耦合度。结构型模式涉及如何组合类和对象以获得更大的结构,它适用于对类和对象的更深层次的组装。行为型模式负责对象之间的通信、职责分配和算法扩展,它强化了对象间协作的方式,支持灵活多变的职责划分。 具体到每种设计模式,如单例模式(创建型)保证一个类仅有一个实例,并提供一个访问它的全局访问点,常用于全局配置。装饰者模式(结构型)通过动态地给一个对象添加一些额外的职责,实现了对类的功能扩展。状态模式(行为型)允许对象在内部状态改变时改变它的行为,对象看起来似乎修改了它的类。 在实际开发中,适当地运用这些设计模式不仅能够提高代码的复用性、可维护性,还能够降低系统的复杂性。使用带有修饰语的描述,如“灵活高效的”单例模式,“强大且易于扩展的”装饰者模式,“优雅且动态的”状态模式,能让核心内容更加鲜明。此外,这些模式可以被应用于多种文件类型,包括但不限于源代码文件(.java, .cpp), 设计文档(.docx, .pdf), 和项目计划文件(.pptx, .xml)。
作者其他创作
大纲/内容
创建型模式(5种)
单例模式(Singleton)确保类只有一个实例,并提供全局访问点
工厂方法模式(Factory Method)定义创建对象的接口,让子类决定实例化哪个类
抽象工厂模式(Abstract Factory)创建相关或依赖对象的家族,而不需要指定具体类
建造者模式(Builder)分步构建复杂对象,分离构造过程和表示
原型模式(Prototype)通过复制现有对象来创建新对象
结构型模式(7种)
适配器模式(Adapter)转换接口使得不兼容的类可以协同工作
装饰器模式(Decorator)动态地为对象添加额外职责
代理模式(Proxy)为其他对象提供代理以控制访问
外观模式(Facade)为子系统中的一组接口提供统一接口
桥接模式(Bridge)将抽象与实现分离,使它们可以独立变化
组合模式(Composite)将对象组合成树形结构表示"部分-整体"层次
享元模式(Flyweight)运用共享技术有效支持大量细粒度对象
行为型模式(11种)
策略模式(Strategy)定义算法家族,使它们可以互相替换
观察者模式(Observer)定义对象间的一对多依赖关系
责任链模式(Chain of Responsibility)将请求的发送者和接收者解耦
命令模式(Command)将请求封装为对象
状态模式(State)允许对象在内部状态改变时改变行为
模板方法模式(Template Method)定义算法骨架,允许子类重定义特定步骤
访问者模式(Visitor)在不修改类的前提下为类添加新操作
中介者模式(Mediator)通过中介对象封装一系列对象交互
解释器模式(Interpreter)定义语言的文法,并解释该语言中的句子
迭代器模式(Iterator)提供顺序访问聚合对象元素的方法
备忘录模式(Memento)捕获对象内部状态并在需要时恢复
0 条评论
下一页
为你推荐
查看更多