设计模式系列目录
本文提供了一个关于设计模式的系列目录,涵盖了创建型、结构型和行为型三种主要的设计模式类别。帮助大家快速理解并定位这些模式的基本概念和应用场景,以提升代码的灵活性、可维护性和降低系统耦合度。
本文提供了一个关于设计模式的系列目录,涵盖了创建型、结构型和行为型三种主要的设计模式类别。帮助大家快速理解并定位这些模式的基本概念和应用场景,以提升代码的灵活性、可维护性和降低系统耦合度。
中介模式是一种行为型设计模式,中介模式定义了一个单独的(中介)对象,来封装一组对象之间的交互。将这组对象之间的交互委派给与中介对象交互,来避免对象之间的直接交互。
解释器模式(Interpreter Design Pattern)是一种行为型设计模式,解释器模式为某个语言定义它的语法(或者叫文法)表示,并定义一个解释器用来处理这个语法。
命令模式(Command Design Pattern)是一种行为型设计模式,命令模式将请求(命令)封装为一个对象,这样可以使用不同的请求参数化其他对象(将不同请求依赖注入到其他对象),并且能够支持请求(命令)的排队执行、记录日志、撤销等(附加控制)功能。
访问者模式(Visitor Design Pattern)是一种行为型设计模式,它允许一个或者多个操作应用到一组对象上,解耦操作和对象本身。
迭代器模式(Iterator Design Pattern)是一种行为型设计模式,也叫作游标模式(Cursor Design Pattern),迭代器模式将集合对象的遍历操作从集合类中拆分出来,放到迭代器类中,让两者的职责更加单一。
状态模式一般用来实现状态机,而状态机常用在游戏、工作流引擎等系统开发中。不过,状态机的实现方式有多种,除了状态模式,比较常用的还有分支逻辑法和查表法。
职责链模式(Chain Of Responsibility Design Pattern)是一种行为型设计模式,它将请求的发送和接收解耦,让多个接收对象都有机会处理这个请求。将这些接收对象串成一条链,并沿着这条链传递这个请求,直到链上的某个接收对象能够处理它为止。
策略模式(Strategy Design Pattern)是一种行为型设计模式,定义一族算法类,将每个算法分别封装起来,让它们可以互相替换。策略模式可以使算法的变化独立于使用它们的客户端(这里的客户端代指使用算法的代码)
模板模式是一种行为型设计模式,模板模式,全称是模板方法设计模式,英文是 `Template Method Design Pattern`。模板方法模式在一个方法中定义一个算法骨架,并将某些步骤推迟到子类中实现。模板方法模式可以让子类在不改变算法整体结构的情况下,重新定义算法中的某些步骤。
享元模式是属于结构型模式,所谓“享元”,顾名思义就是被共享的单元。享元模式的意图是复用对象,节省内存,前提是享元对象是不可变对象。
组合模式是属于结构型模式,将一组对象组织(Compose)成树形结构,以表示一种“部分 - 整体”的层次结构。组合让客户端(在很多设计模式书籍中,“客户端”代指代码的使用者。)可以统一处理单个对象和组合对象的处理逻辑。
门面模式是一种结构型设计模式,门面模式,也叫外观模式,英文全称是 `Facade Design Pattern`。门面模式为子系统提供一组统一的接口,定义一组高层接口让子系统更易用。
适配器模式是一种结构型设计模式,适配器模式(Adapter Design Pattern)将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类能一起工作。
桥接模式是一种结构型设计模式,也叫作桥梁模式,英文是 `Bridge Design Pattern`。将抽象和实现进行解耦,让它们可以独立变化。
装饰器模式(Decorator Pattern)是一种结构型设计模式, 允许你通过将对象放入包含行为的特殊封装对象中来为原对象绑定新的行为,在保持类方法签名完整性的前提下,提供了额外的功能。
代理模式(Proxy Design Pattern)是一种结构型设计模式, 它在不改变原始类(或叫被代理类)代码的情况下,通过引入代理类来给原始类附加功能。
原型模式是属于创建型模式,基于原型来创建对象的方式就叫作原型设计模式(Prototype Design Pattern),简称原型模式。
建造者模式是属于创建型模式,建造者模式(Builder Pattern)是一个比较常用的创建型设计模式,又叫Builder 模式,中文翻译为建造者模式或者构建者模式,也有人叫它生成器模式。
深入理解面向对象设计的7大理论,什么是OOP,如何通过封装、抽象、继承、多态解决编程问题,面向对象的优势,及接口与抽象类的使用,提高代码的可维护性和扩展性。