设计模式
文章平均质量分 77
csdn_chai
这个作者很懒,什么都没留下…
展开
-
面向对象五大原则和三个基本特征
单一职责原则(Single-Resposibility Principle):一个类,最好只做一件事,只有一个引起它的变化。单一职责原则可以看做是低耦合、高内聚在面向对象原则上的引申,将职责定义为引起变化的原因,以提高内聚性来减少引起变化的原因。 开放封闭原则(Open-Closed principle):软件实体应该是可扩展的,而不可修改的。也就是,对扩展开放,对修改封闭的。 Liskov替换原原创 2017-08-22 08:57:58 · 308 阅读 · 0 评论 -
【23种设计模式】结构型模式 > 装饰模式
桥接模式(Bridge Pattern)一、介绍二、适用场景三、UML类图四、优缺点4.1 优点4.2 缺点五、代码实现C++ C# 一、介绍二、适用场景三、UML类图四、优缺点4.1 优点4.2 缺点五、代码实原创 2017-08-23 15:40:50 · 324 阅读 · 0 评论 -
【23种设计模式】结构型模式 > 适配器模式
适配器模式 Adapter Pattern原创 2017-08-23 14:14:55 · 1451 阅读 · 0 评论 -
【23种设计模式】创建型模式 > 原型模式
原型模式 Prototype Pattern 通过一个原型对象克隆出多个一模一样的对象,该模式称之为原型模式。一、介绍用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。二、适用场景(1) 创建新对象成本较大(如初始化需要占用较长的时间,占用太多的CPU资源或网络资源),新的对象可以通过原型模式对已有对象进行复制来获得,如果是相似对象,则可以对其成员原创 2017-08-23 13:31:48 · 229 阅读 · 0 评论 -
【23种设计模式】创建型模式 > 建造者模式
建造者模式(Builder Pattern)复杂对象的组装与创建, 建造者模式:是将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。一、介绍没有人买车会只买一个轮胎或者方向盘,大家买的都是一辆包含轮胎、方向盘和发动机等多个部件的完整汽车。如何将这些部件组装成一辆完整的汽车并返回给用户,这是建造者模式需要解决的问题。建造者模式又称为生成器模式,它是一种较转载 2017-08-23 12:36:55 · 314 阅读 · 0 评论 -
【23种设计模式】创建型模式 > 单例模式
对于一个软件系统的某些类而言,我们无须创建多个实例。比如Windows的任务管理器,只可能同时有一个打开。单例模式可以确保类对象的唯一性,并提供这个唯一对象的唯一访问点(getInstance())。单例模式的问题在于,在多线程环境下,访问单例会造成冲突,比如原创 2017-08-23 10:15:37 · 264 阅读 · 0 评论 -
【23种设计模式】创建型模式 > 三个工厂模式(简单工厂、抽象工厂、工厂方法)
简单工厂(Simple Factory Pattern)不属于23种GOF设计模式之一工厂方法(Factory Method Pattern)使用频率最高的工厂模式抽象工厂(Abstract Factory Pattern)前言工厂可以看做一个特殊的类,在这个类中专门负责生产一系列产品(对象)的一个集合就可以成为工厂。原创 2017-08-23 08:03:23 · 401 阅读 · 0 评论 -
【23种设计模式】快速回想
1、factory(工厂)追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德 基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory 工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:如何创建及如何向转载 2017-08-23 07:45:39 · 212 阅读 · 0 评论 -
【23种设计模式】概要
关于设计模式 这个设计模式参考提供四人帮23种模式的快速参考,像原书《设计模式-可复用面向对象基础》中所陈述的,每个模式包括,类图,解释,使用说明和实际例子。 创建模式:用来构建对象以便能从实现系统解耦。结构模式:用不同的对象组成大规模的对象结构。行为模式:用来在对象中管理算法,关系,和责任。 对象层面:处理对象之间的关系,决定于运行期。转载 2017-08-23 07:19:18 · 232 阅读 · 0 评论 -
【23种设计模式】结构型模式 > 代理模式
代理模式(Proxy Pattern)问题描述:1. 近年来,代购已逐步成为电子商务的一个重要分支。何谓代购,简单来说就是找人帮忙购买所需要的商品,当然你可能需要向实施代购的人支付一定的费用。代购通常分为两种类型:一种是因为在当地买不到某件商品,又或者是因为当地这件商品的价格比其他地区的贵,因此托人在其他地区甚至国外购买该商品,然后通过快递发货或者直接携带回来;还有一种代购,由于消费者转载 2017-08-23 23:09:38 · 368 阅读 · 0 评论 -
【23种设计模式】行为型模式 > 责任链模式
# 责任链模式定义使多个对象都有机会处理请求,从而避免了请求的发送者和接受者之间的耦合关系。将这些对象链成一条链,并沿着这条链传递该请求/命令,直到有对象处理它为止类图抽象处理者(Handler)角色:定义一个处理请求的接口实现后继链具体处理者(ConcreteHandler)角色:处理它所负责的请求可以访问它的后继者如果可以处理该请原创 2017-08-24 13:50:34 · 263 阅读 · 0 评论 -
UML类图
UML类图是描述面向对象程序的语言之一。转载 2017-08-24 07:45:14 · 285 阅读 · 0 评论 -
【23种设计模式】结构型模式 > 桥接模式
桥接模式(Bridge Pattern)问题描述:1. 拿汽车在路上行驶的来说。即有小汽车又有公共汽车,它们都不但能在市区中的公路上行驶,也能在高速公路上行驶。这你会发现,对于交通工具(汽车)有不同的类型,然而它们所行驶的环境(路)也在变化,在软件系统中就要适应两个方面的变化?怎样实现才能应对这种变化呢?这个问题变化的量有两个维度,即车和路。2. 有各种各样的图形,比如长方形,圆形,三转载 2017-08-24 07:31:14 · 328 阅读 · 0 评论 -
【23种设计模式】行为型模式 > 策略模式
策略模式(Strategy Pattern)问题描述:1. 条条大路通罗马。在很多情况下,实现某个目标的途径不止一条,例如我们在外出旅游时可以选择多种不同的出行方式,如骑自行车、坐汽车、坐火车或者坐飞机,可根据实际情况(目的地、旅游预算、旅游时间等)来选择一种最适合的出行方式。在制订旅行计划时,如果目的地较远、时间不多,但不差钱,可以选择坐飞机去旅游;如果目的地虽远、但假期长、且需控制旅游转载 2017-08-23 21:57:49 · 709 阅读 · 0 评论 -
【23种设计模式】行为型模式 > 观察者模式
观察者模式(Observer Pattern)也叫发布-订阅模式观察者模式是设计模式中的“超级模式”,其应用随处可见。问题描述:“红灯停,绿灯行”,在日常生活中,交通信号灯装点着我们的城市,指挥着日益拥挤的城市交通。当红灯亮起,来往的汽车将停止;而绿灯亮起,汽车可以继续前行。在这个过程中,交通信号灯是汽车(更准确地说应该是汽车驾驶员)的观察目标,而汽车是观察者。随着交通信号灯的变化,汽原创 2017-08-23 20:52:46 · 271 阅读 · 0 评论 -
【23种设计模式】结构型模式 > 外观模式
外观模式(Facade Pattern)问题描述: 一个电源总开关可以控制四盏灯、一个风扇、一台空调和一台电视机的启动和关闭。该电源总开关可以同时控制上述所有电器设备,电源总开关即为该系统的外观模式设计。一、介绍外观模式是使用频率最高的结构型设计模式之一,无论是在Web应用软件或是桌面应用软件,还是在移动应用软件中,外观模式都得到了广泛的应用。二、适用场景原创 2017-08-23 17:49:56 · 869 阅读 · 0 评论