设计模式
一起来学习设计模式
yy763496668
这个作者很懒,什么都没留下…
展开
-
Unity_面向对象设计原则_026
单一原则SRP 开闭原则OCP 里氏转换原则LSP 依赖倒置原则DIP 接口隔离原则ISP 合成复用原则CRP 迪米特法则LKP原创 2017-07-27 17:59:26 · 716 阅读 · 0 评论 -
Unity_单例设计模式_027
有些时候我们需要只让同一个类只有一个对象,比如Unity的各个面板,我们在打开面板的时候,如果该面板已经显示出来了,那么我们没有必要在打开一个新的面板,直接使用已有的面板就行。这时候我们就要使用单例模式。单例模式 Singleton保证一个类仅有一个实例,并提供一个访问它的全局访问点。通常我们可以让一个全局变量使得一个访问对象被访问,但它不能防止你的实例化多个对象。一个最好的办法就是,让类自身负责保原创 2017-07-27 18:04:30 · 591 阅读 · 0 评论 -
Unity_状态模式_028
状态模式定义状态模式:允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类。对象行为型模式 又名状态对象(Objects for States)用于解决系统中复杂对象的状态转换以及不同状态下行为的封装问题 将一个对象的状态从该对象中分离出来,封装到专门的状态类中,使得对象状态可以灵活变化 对于客户端而言,无须关心对象状态的转换以及对象所处的当前状态,无论对于何种状态的对象,客原创 2017-07-27 18:05:26 · 761 阅读 · 0 评论 -
Unity_简单工厂设计模式_029
简单工厂模式基本实现流程 具体产品类:将需要创建的各种不同产品对象的相关代码封装到具体产品类中 抽象产品类:将具体产品类公共的代码进行抽象和提取后封装在一个抽象产品类中 工厂类:提供一个工厂类用于创建各种产品,在工厂类中提供一个创建产品的工厂方法,该方法可以根据所传入参数的不同创建不同的具体产品对象 客户端:只需调用工厂类的工厂方法并传入相应的参数即可得到一个产品对象 简单工厂模式 (原创 2017-07-27 18:07:33 · 696 阅读 · 0 评论 -
工厂方法模式
参考代码:using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;/// <summary>/// 通过一系列工厂将要生成的对象放入特定的工厂/// 将类的实例化过程延迟到了工厂子类完成/// </summary>na原创 2017-10-10 17:17:54 · 735 阅读 · 0 评论 -
Unity_外观模式_030
两种喝茶方式示意图 一个客户类需要和多个业务类交互,而这些需要交互的业务类经常会作为一个整体出现 引入一个新的外观类(Facade)来负责和多个业务类【子系统(Subsystem)】进行交互,而客户类只需与外观类交互 为多个业务类的调用提供了一个统一的入口,简化了类与类之间的交互没有外观类:每个客户类需要和多个子系统之间进行复杂的交互,系统的耦合度将很大 引入外观类:客户类只需要直接与外原创 2017-07-27 18:09:26 · 596 阅读 · 0 评论 -
Unity_观察者模式_031
交通信号灯与汽车示意图 交通信号灯 观察目标 汽车(汽车驾驶员) 观察者 软件系统:一个对象的状态或行为的变化将导致其他对象的状态或行为也发生改变,它们之间将产生联动 观察者模式: 定义了对象之间一种一对多的依赖关系,让一个对象的改变能够影响其他对象 发生改变的对象称为观察目标,被通知的对象称为观察者 一个观察目标可以对应多个观察者定义观察者模式:定义对象之间的一种一原创 2017-07-27 18:11:27 · 802 阅读 · 0 评论