DesignPatterns设计模式是对相互通信的类和对象的描述,用于解决特定场景下的一般设计问题。这是《设计模式:可复用面向对象软件的基础》(DesignPatterns:ElementsofReusableObject-Oriented)中设计模式的定义。看完之后,你会不会有和我一样的感受:这是什么鬼?于是,我找到了英文原文:Thedesignpatternsaredescriptionofcommunicationobjectsandclassesthatarecustomizedtosolveageneraldesignprobleinaparticularcontext。一点翻译:设计模式是对通信对象和类的描述,这些对象和类被定制以解决特定上下文中的一般设计问题。和类是定制的,以解决特定场景下的一般设计问题。(有些技术书籍很难,甚至语义上看不懂,大部分是翻译造成的。)也可以理解为设计模式是对某一类问题的通用解决方案。使用设计模式的目的是为了可重用代码和提高代码的可靠性。可扩展性和可维护性。创建模式用于创建对象,为设计类实例化新对象提供指南。中文名称英文名称简要说明速记关键字FactoryMethodFactoryMethod定义了创建对象的接口,让子类决定实例化哪个类。动态生产对象抽象工厂AbstractFactory提供了一个接口,可以创建一系列相关或相互依赖的对象,而无需指定它们的具体类。ProductionSeriesObjectBuilderBuilder将复杂对象的构造与其表示分离,以便相同的构造过程可以创建不同的表示。复制对象构造原型Prototype通过复制原型对象来创建一个新的对象。CloneObjectSingletonSingleton确保一个类只有一个实例,并为其提供一个全局访问点。单例结构用于处理类或对象的组合,为如何设计类以形成更大的结构提供指导。中文名英文名简要说明速记关键字AdapterAdapter将一个类的接口转换成另一个想要的接口,使原本不兼容的接口可以协同工作。TransformationInterfaceBridgeBridge将类的抽象部分与其实现分离,以便它们都可以独立变化。继承树拆分组合Composite将对象组合成树状结构来表示“部分-整体”的层次结构,同时保持单个对象和复合对象的使用一致。树结构装饰Decorator动态地给一个对象增加一些额外的职责。动态附加职责Facades为子系统中的一组接口提供统一的接口。对外统一接口享元使用共享对象有效支持大量细粒度对象。汉字编码代理Proxy提供的代理对象,用于控制对象的访问。快捷行为类型用于描述类或对象之间的交互和职责分配,为类之间的交互方式和职责分配提供指导。中文名称英文名称简要说明速记关键字责任链责任链将对象连接成一条链,并沿着这条链传递请求,直到一个对象处理它。传递职责命令命令将请求封装为一个对象,然后可以保存,传递命令,支持可撤销操作。日志记录、可撤销的解释器Interpreter可以解释自定义语法表示的解释器。虚拟机的机制Iterator提供了一种方法,可以在不暴露集合内部表示的情况下顺序访问集合中的每个元素。数据集中介器使用中介对象来封装一系列对象交互。Memento捕获对象的内部状态并将此状态保存在对象外部。GamearchiveobserverObserver定义了对象之间一对多的依赖关系。当一个对象的状态发生变化时,所有依赖它的对象都会得到通知并自动更新。订阅、广播、链接状态状态允许一个对象在其内部状态改变时改变它的行为。state变成一个类strategyStrategy定义了一系列算法,一个一个封装起来,让它们可以互换。多方案切换模板方法TemplateMethod在一次操作中定义了算法的骨架,使得子类可以在不改变算法结构的情况下重新定义算法的一些具体步骤。框架访问者表示对对象结构中元素的操作。它允许您在不更改元素类的情况下定义元素的新操作。数据与运营分离“你和我聊了这么多,好图呢?”“别着急,最好的总是在你不期待的时候出现。”最后谢谢大家的喜欢和关注,帅气又漂亮。
