![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
唐孝辉
QQ:1351105506
微信:xt411526
展开
-
原型模式
01.不适用原型模式的情况using System;using static System.Console;namespace Prototype{ class Program { static void Main(string[] args) { Resume resume=new Resume("老鸟"); ...原创 2019-10-30 10:18:02 · 103 阅读 · 0 评论 -
访问者模式
01.定义02.原创 2019-10-30 09:39:14 · 71 阅读 · 0 评论 -
迭代器模式
01定义原创 2019-10-29 11:03:46 · 82 阅读 · 0 评论 -
装饰模式
01不使用装饰模式的情况using System;using static System.Console;namespace 装饰模式{ class Program { static void Main(string[] args) { People people=new People("一休"); ...原创 2019-10-29 09:20:45 · 150 阅读 · 0 评论 -
组合模式
using System;using System.Collections.Generic;namespace 组合模式{ class Program { static void Main(string[] args) { ComplexGraphics g = new ComplexGraphics("两条线段组成...转载 2019-10-26 10:31:25 · 90 阅读 · 0 评论 -
命令模式
using System;using System.Collections.Generic;namespace 命令模式{ class Program { static void Main(string[] args) { //把电视机、电灯准备好,把各种指令准备好,拿出遥控器把各种指令收纳其中 ...原创 2019-10-26 09:41:23 · 131 阅读 · 2 评论 -
适配器模式
适配就是转换,把不能在一起工作的两样东西通过转换,让他们可以在一起工作原创 2019-10-25 10:28:42 · 74 阅读 · 0 评论 -
备忘录模式
备忘录模式能记录一个对象的内部状态,当用户后悔时能撤销当前操作,使数据恢复到它原先的状态。备忘录(Memento)模式的定义:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,以便以后当需要时能将该对象恢复到原先保存的状态。该模式又叫快照模式。...原创 2019-07-08 16:05:04 · 94 阅读 · 0 评论 -
责任链模式
责任链模式原创 2019-05-16 23:38:07 · 84 阅读 · 0 评论 -
享元模式
享元模式——运用共享技术有效地支持大量细粒度的对象。享元模式可以避免大量相似类的开销,在软件开发中如果需要生成大量细粒度的类实例来表示数据,如果这些实例除了几个参数外基本上都是相同的,这时候就可以使用享元模式来大幅度减少需要实例化类的数量。如果能把这些参数(指的这些类实例不同的参数)移动类实例外面,在方法调用时将他们传递进来,这样就可以通过共享大幅度地减少单个实例的数目。...原创 2019-04-19 11:44:54 · 99 阅读 · 0 评论 -
建造者模式
建造者模式主要用于“分步骤构建一个复杂的对象”,在这其中“分步骤”是一个稳定的算法,而复杂对象的各个部分则经常变化产品不需要抽象类,特别是由于创建对象的算法复杂而导致使用此模式的情况下或者此模式应用于产品的生成过程,其最终结果可能差异很大,不大可能提炼出一个抽象产品类。前面的抽象工厂模式解决“系列对象”的需求变化,Builder 模式解决“对象部分”的需求变化。建造者模式的使用使得产品的内...转载 2019-04-18 15:48:28 · 84 阅读 · 0 评论 -
C#状态模式
状态模式允许一个对象在其内部状态改变时改变它的行为,使对象看起来似乎修改了它的类抽象状态类可以是抽象类,也可以是接口,不同状态类就是继承这个父类的不同子类,状态类的产生是由于环境类存在多个状态,同时还满足两个条件:这些状态经常需要切换,在不同的状态下对象的行为不同。因此可以将不同对象下的行为单独提取出来封装在具体的状态类中,使得环境类对象在其内部状态改变时可以改变它的行为,对象看起来似乎修改了它...原创 2019-03-25 15:48:01 · 533 阅读 · 0 评论 -
中介者模式
中介者模式,用一个中介者对象封装一系列的对象交互,中介者使各对象不需要显式的相引用,从而使其耦合松散,而且可以独立的改变他们之间的交互。...原创 2019-03-28 11:20:29 · 133 阅读 · 0 评论 -
桥接模式
概述将抽象部分(Abstraction)与实现部分(Implementor)分离,使它们可以独立地变化。解决的问题在软件系统中,有些类型由于自身的逻辑,它具有两个或多个维度的变化。为了解决这种多维度变化,又不引入复杂度,这就要使用Bridge模式。模式中的角色2.1 抽象(Abstraction):定义抽象接口,该接口中包含实现具体行为、具体特征的Implementor接口。...原创 2019-03-28 15:59:20 · 108 阅读 · 0 评论 -
策略模式
策略模式是对算法的包装,是把使用算法的责任和算法本身分割开,委派给不同的对象负责。策略模式通常把一系列的算法包装到一系列的策略类里面。用一句话慨括策略模式就是——“将每个算法封装到不同的策略类中,使得它们可以互换”。环境角色(Context):持有一个Strategy类的引用抽象策略角色(Strategy):这是一个抽象角色,通常由一个接口或抽象类来实现。此角色给出所有具体策略类所需实现的接口...原创 2019-03-28 21:25:28 · 123 阅读 · 0 评论 -
工厂模式
工厂模式主要是为创建对象提供过渡接口,以便将创建对象的具体过程屏蔽隔离起来,达到提高灵活性的目的。工厂模式可以分为三类:1)简单工厂模式(Simple Factory)2)工厂方法模式(Factory Method)3)抽象工厂模式(Abstract Factory)...原创 2019-04-17 12:52:05 · 118 阅读 · 0 评论 -
unity单利模板
1、单例类只能有一个实例。2、单例类必须自己创建自己的唯一实例。3、单例类必须给所有其他对象提供这一实例。01:不继承MonoBehaviour的类实现单利这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。class singleTemp{ //私有化类实例 ...原创 2019-03-23 21:17:11 · 210 阅读 · 0 评论 -
模板方法模式
模板方法模式某个方法的实现需要多个步骤,其中有些步骤是固定的,而有些步骤并不固定,存在可变性。为了提高代码的复用性和系统的灵活性可以使用一种称之为模板方法模式的设计模式来对这类情况进行设计定义一个操作中的算法的骨架,而将一些步骤延迟到子类去。...原创 2019-04-14 23:08:22 · 91 阅读 · 0 评论 -
unity有限状态机FSMstate(Finite-state machine )
一个有限状态机是一个设备,或是一个设备模型。具有有限数量的状态,它可以在任何给定的时间根据输入进行操作,是的从一个状态变换到另一个状态,或者是促使一个输出或者一种行为的发生。一个有限状态机在任何瞬间只能处在一种状态。...原创 2019-03-29 15:27:11 · 599 阅读 · 0 评论 -
外观模式
外观模式:为子系统中的一组接口提供一个统一的入口。外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用外观模式又称为门面模式,它是一种对象结构型模式。外观模式是迪米特法则的一种具体实现,通过引入一个新的外观角色可以降低原有系统的复杂度,同时降低客户类与子系统的耦合度在软件开发中,有时候为了完成一项较为复杂的功能,一个客户类需要和多个业务类交互,而这些需要交互的业务类经常会作为一个整...原创 2019-03-27 20:29:40 · 121 阅读 · 0 评论