创建型:工厂方法模式

创建型:工厂方法模式

概念 简单工厂模式 简单工厂模式专门创建一个类来负责创建其他类得实例,被创建的实例通常都具有共同的父类。 它又称为静态工厂模式。 其实质是,由一个工厂类根据传入的参数,动态决定应该创建哪个具体类的实例。 工厂方法模式 工厂方法模式是粒度很小的设计模式,因为该模式的表现只是一个抽象...

创建型:抽象工厂模式

创建型:抽象工厂模式

引入 在工厂方法模式中具体工厂负责生产具体的产品,每一个具体工厂对应一种具体产品,工厂方法也具有唯一性,一般情况下,一个具体工厂中只有一个工厂方法或者一组重载的工厂方法。但是有时候我们需要一个工厂可以提供多个产品对象,而不是单一的产品对象。 抽象工厂模式与工厂方法模式最大的区别在...

结构型:组合模式

结构型:组合模式

概述 一个组织有很多子组织,而无论子组织是单独一个部门或是一个分组织。该组织都希望把它们当成一样的子组织来管理。 比如公司总部有多个部分,该公司还有一些分公司,当总部有通知需要下达时,将分公司视为部门一样,一起通知。而分公司拿到通知之后,再下达该通知到自己下属的各个部门。 定义 ...

行为型:命令模式

行为型:命令模式

概述 在软件设计中,我们经常需要向某些对象发送请求,但是并不知道请求的接收者是谁,也不知道被请求的操作是哪个,我们只需在程序运行时指定具体的请求接收者即可,此时,可以使用命令模式来进行设计,使得请求发送者与请求接收者消除彼此之间的耦合,让对象之间的调用关系更加灵活。 命令模式可以...

设计模式:六大原则

设计模式:六大原则

总原则:开闭原则 对扩展开放,对修改关闭 在程序需要进行拓展的时候,不能去修改原有的代码,而是要扩展原有代码,实现一个热插拔的效果。 实现“开-闭”原则的关键步骤是抽象化。 一 单一原则 不要存在多于一个导致类变更的原因 每个类应该实现单一的职责,如若不然,就应该把类拆分 二 里...

创建型:建造者模式

创建型:建造者模式

概述 无论是在现实世界中还是在软件系统中,都存在一些复杂的对象,它们拥有多个组成部分,如汽车,它包括车轮、方向盘、发送机等各种部件。而对于大多数用户而言,无须知道这些部件的装配细节,也几乎不会使用单独某个部件,而是使用一辆完整的汽车,可以通过建造者模式对其进行设计与描述,建造者模...

行为型:策略模式

行为型:策略模式

概述 完成一项任务或事情,往往会有多种方法,而每一个方法可以称之为一个策略。而策略的选择,往往需要根据实际的环境或者条件的不同而做出不同的选择。 定义 定义一系列算法,将每一个算法封装起来,并让它们可以相互代替。 策略模式让算法独立于使用它的客户而变化。 角色 Context: ...

设计模式:归类

设计模式:归类

设计模式 设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案 。 设计模式-分类 创建型 工厂方法模式 Code 简单工厂模式是通过给工厂传入标志参数,来创建对应标识表示的商品类。 工厂方法模式是工厂类持有创建多个商品类的接口,这些接口返回商品类的基类指针。 抽象工厂...

行为型:迭代器模式

行为型:迭代器模式

概述 对于集合对象而言,肯定会涉及到对集合的添加和删除操作,同时也肯定支持遍历集合元素的操作,我们此时可以把遍历操作放在集合对象中,但这样的话,集合对象既承担太多的责任了。 面向对象设计原则中有一条就是单一职责原则,所有我们要尽可能地分离这些职责,用不同的类取承担不同的责任,迭代...

架构模式:MVC模式

架构模式:MVC模式

概述 MVC 模式是一种软件设计模式,用于将应用程序的逻辑分为三个独立的组件: 模型(Model) 视图(View) 控制器(Controller) 每个组件都有自己的职责,并且彼此之间相互解耦,从而提高了代码的可维护性和可扩展性 模型 模型表示应用程序的数据和业务逻辑。 它负责...

扫一扫二维码分享