结构型:代理模式

结构型:代理模式

简述 在某些情况下,一个客户不想或者不能直接引用一个对 象,此时可以通过一个称之为“代理”的第三者来实现 间接引用。代理对象可以在客户端和目标对象之间起到 中介的作用,并且可以通过代理对象去掉客户不能看到 的内容和服务或者添加客户需要的额外服务。 定义 给某一个对象提供一个代理,...

结构型:享元模式

结构型:享元模式

概述 面向对象技术可以很好地解决一些灵活性或可扩展性问题,但在很多情况下需要在系统中增加类和对象的个数。当对象数量太多时,将导致运行代价过高,带来性能下降等问题。 享元模式通过共享技术实现相同或相似对象的重用。 在享元模式中可以共享的相同内容称为内部状态(IntrinsicSta...

结构型:装饰器模式

结构型:装饰器模式

概述 一般有两种方式可以实现给一个类或对象增加行为: 继承机制 关联机制 继承机制 使用继承机制是给现有类添加功能的一种有效途径,通过继承一个现有类可以使得子类在拥有自身方法的同时还拥有父类的方法。但是这种方法是静态的,用户不能控制增加行为的方式和时机。 关联机制 即将一个类的对...

架构模式:MVC模式

架构模式:MVC模式

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

创建型:工厂方法模式

创建型:工厂方法模式

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

行为型:状态模式

行为型:状态模式

简述 在很多情况下,一个对象的行为取决于一个或多个动态变化的属性,这样的属性叫做状态,这样的对象叫做有状态的(stateful)对象,这样的对象状态是从事先定义好的一系列值中取出的。当一个这样的对象与外部事件产生互动时,其内部状态就会改变,从而使得系统的行为也随之发生变化。 定义...

行为型:迭代器模式

行为型:迭代器模式

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

行为型:模板方法模式

行为型:模板方法模式

概述 父类抽象出子类共有的方法,并且自己实现他 子类实现各自不同的业务 父类实现的方法按照一定的逻辑调用抽象方法 为了反之子类重写父类实现的方法父类定义为final方法 定义 一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方...

设计模式:归类

设计模式:归类

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

创建型:建造者模式

创建型:建造者模式

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

扫一扫二维码分享