单例模式:确保一个类只有一个实例,提供一个访问它的全局访问点,节省系统资源,防止资源冲突。
工厂方法模式:定义创建对象的接口,让子类决定实例化哪个类,简化对象创建过程,提高灵活性。
抽象工厂模式:提供一个创建一系列相关或相互依赖对象的接口,解耦具体类的实例化,增强模块间的独立性。
建造者模式:将一个复杂对象的构建与表示分离,使得同样的构建过程可以创建不同的表示,实现构建和表示的解耦。
原型模式:通过复制现有实例来创建新实例,避免创建对象的开销,提高性能。
适配器模式:将一个类的接口转换成客户希望的另外一个接口,解决接口不兼容的问题。
桥接模式:将抽象部分与实现部分分离,使它们可以独立变化,提高组合和拓展性。
组合模式:将对象组合成树形结构以表示部分-整体层次结构,使客户端对单个对象和组合对象的使用具有一致性。
装饰模式:动态地为对象添加新功能,增强对象的功能而不改变原有结构。
外观模式:为子系统中的一组接口提供一个统一的高层接口,简化客户端与子系统的交互。
享元模式:运用共享技术有效地支持大量细粒度的对象,降低系统中对象的数量,节省内存。
代理模式:为其他对象提供一个代理以控制对这个对象的访问,实现访问控制和对象保护。
模板方法模式:在一个方法中定义算法骨架,将具体步骤延迟到子类中实现,提高代码复用和扩展性。
命令模式:将请求封装成对象,解耦请求的发送者和接收者,增强系统的可扩展性。
迭代器模式:提供一种方法顺序访问一个聚合对象中各个元素,而又不暴露该对象的内部表示。
观察者模式:对象间一对多的依赖关系,当一个对象状态改变时,它的所有依赖者都会得到通知并自动更新。
中介者模式:定义一个对象来封装一组对象的交互,减少对象间的依赖关系,提高系统的可维护性。
备忘录模式:捕获一个对象的内部状态,并在该对象之外保存这个状态,以便后续恢复对象状态,实现撤销功能。
解释器模式:给定一种语言,定义它的文法的表示,提供一个解释器来解释语言中的句子,用于实现简单的编译或解释功能。
状态模式:允许一个对象在其内部状态改变时改变它的行为,使对象的行为与状态相对应。
策略模式:定义一系列算法,将每个算法封装起来,并使它们可以互相替换,使算法的变化不影响使用算法的客户。
责任链模式:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系,将这些对象连成一条链,并沿着这条链传递请求,直到有对象处理它为止。
访问者模式:表示一个作用于某对象结构中的各元素的操作,使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作,提高数据结构和操作之间的解耦。
网友评论