Tag-设计模式

 2017-09-18 21:20:28 |  0 Comments  |  设计模式

Proxy Patter 代理模式

# Proxy Pattern **结构型** 也叫委托模式 > 为其他对象提供一种代理以控制对这个对象的访问(也就是限制对该对象的访问,比如访问方法前检验权限) ![](https://leanote.com/api/file/getImage?fileId=5ab310e6ab64411f42000543) 使用场景:想在访问一个类时做一些控制。 **不同于适配器,代理模式不
 2017-08-16 14:38:09 |  0 Comments  |  设计模式

State 状态模式

# State pattern **行为型** ## 概念 **意图**:允许对象在内部状态发生改变时改变它的行为,对象看起来好像修改了它的类。 **主要解决**:对象的行为依赖于它的状态(属性),并且可以根据它的状态改变而改变它的相关行为。 **何时使用**:代码中包含大量与对象状态有关的条件语句。 **与策略模式不同的是** 策略模式中,策略的切换由客户端决定,状态模式虽然也是不同状态下
 2017-03-21 08:19:22 |  0 Comments  |  设计模式

Builder 创造器

# Builder模式 创建型 ## 动机 在软件系统中,有时候面临**一个**"复杂对象"的创建工作,其通常由各个部分的子对象用一定算法构成;由于需求的变化,这个**复杂对象的各个部分经常面临着剧烈的变化**,但是将它们**组合到一起的算法却相对稳定**. > 与抽象工厂不同的是,他只创建一个对象,只是把创建过程分开了.同时需要一个客户程序来指挥创建过程(先创建什么部分,创建几个).
 2017-03-21 08:17:48 |  0 Comments  |  设计模式

Singleton 单例模式

# 单例模式 **创建型模式** > 保证一个类只有一个实例,并提供一个访问它的全局访问点 - 将构造函数私有化 - 提供一个静态方法,返回一个对象 - 创建一个单例 比如一个窗口有一个按钮,按钮在窗体1,作用创建窗体2 ![](https://leanote.com/api/file/getImage?fileId=58d0712eab64413217003df7) ## 懒汉
 2017-03-21 08:15:57 |  0 Comments  |  设计模式

Abstract Factory 抽象工厂

# 抽象工厂模式 **创建型** ## 动机 在软件系统中,经常面对"一系列相互依赖的对象"的创建工作(简单工厂);同时,由于需求的变化,往往存在更多系列对象的创建工作(抽象工厂) ## 意图 提供一个创建**一系列相关**或相互依赖对象的接口,而无需指定它们具体的类。 ## 解决思路 - 封装变化点-----哪里变化封装变化 - 变化点是"对象创建" ## 简单工厂 这
 2017-03-21 08:14:34 |  0 Comments  |  设计模式

Factory Method 工厂方法

# Factory Method 创建型 ## 动机 在软件系统中,由于需求的变化,"这个**对象的具体实现**"经常面临着剧烈的变化,但它却有比较稳定的接口。 如何应对这种变化呢?提供一种封装机制来隔离出"这个易变对象"的变化,从而保持系统中"其它依赖的对象"不随需求的变化而变化。 ## 意图 定义一个用户创建对象的接口,让子类决定实例哪一个类。Factory Method使一个类的实例