![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
S2_设计模式学习
设计模式学习的学习记录, S2赛季
zebintang
能不活着就不要活,在炼狱中死不掉才是最悲哀的,
展开
-
装饰模式
装饰模式是为已有功能动态的添加更多功能的一种方式。当系统需要新功能的时候,是向旧的类中添加新的代码。这些新加的代码通常装饰了原有类的核心职责或主要行为。在主类中加入了新的字段,新的方法和新的逻辑从而增加了主类的复杂度。而这些新加入的东西仅仅是为了满足一些只在某种特定的情况下才会执行的特殊行为需要,而装饰模式却提供了一个非常好的解决方案,它把每个要装饰的功能放在单独的类中,并让这个类包装...原创 2018-10-03 17:00:08 · 136 阅读 · 0 评论 -
解耦广播系统用委托+字典实现,C#
这个和观察者模式很像。using System;using System.Collections;using System.Collections.Generic;using UnityEngine;public class EventCenter { static Dictionary<EventType,Delegate> EventsDic=...原创 2018-12-07 16:42:05 · 228 阅读 · 0 评论 -
Unity 工厂 模式
泛型工厂:using System;using System.Collections.Generic;using System.Linq;using System.Text;using UnityEngine; public class Program: MonoBehaviour { void Start() { ...原创 2018-04-25 11:46:30 · 477 阅读 · 0 评论 -
大话设计模式的学习记录
虽然之前在学校的时候又看过一次设计模式,后来又没能成为主程序… 在一家游戏工作室写游戏UI逻辑… 因此这设计模式会忘记掉,所以需要每次回过头来重新再学习一下,目前已经过半了。学习这条路是不能停止的。另外,在学习的时候,可以使用思导图,把大概的,重要的提取出来。github可以提取...原创 2019-07-20 15:53:04 · 139 阅读 · 0 评论 -
组合模式
组合模式组合模式(Composite Pattern),又叫部分整体模式,是用于把一组相似的对象当作一个单一的对象。组合模式依据树形结构来组合对象,用来表示部分以及整体层次。这种类型的设计模式属于结构型模式,它创建了对象组的树形结构。这种模式创建了一个包含自己对象组的类。该类提供了修改相同对象组的方式。我们通过下面的实例来演示组合模式的用法。实例演示了一个组织中员工的层次结构。...原创 2018-11-27 12:17:33 · 123 阅读 · 0 评论 -
建造者模式
建造者模式建造者模式(Builder Pattern)使用多个简单的对象一步一步构建成一个复杂的对象。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。一个 Builder 类会一步一步构造最终的对象。该 Builder 类是独立于其他对象的。介绍意图:将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。主要解决:主要解决在软件系统中,有...原创 2018-11-27 11:54:24 · 92 阅读 · 0 评论 -
桥接模式Unity
桥接模式:桥接(Bridge)是用于把抽象化与实现化解耦,使得二者可以独立变化。这种类型的设计模式属于结构型模式,它通过提供抽象化和实现化之间的桥接结构,来实现二者的解耦。这种模式涉及到一个作为桥接的接口,使得实体类的功能独立于接口实现类。这两种类型的类可被结构化改变而互不影响。我们通过下面的实例来演示桥接模式(Bridge Pattern)的用法。其中,可以使用相同的抽象类方法但是不...原创 2018-11-27 11:40:25 · 373 阅读 · 0 评论 -
模板方法模式
模板模式在模板模式(Template Pattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。这种类型的设计模式属于行为型模式。介绍意图:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。主要解决:一些方法通用,却在每一个子类...原创 2018-11-27 11:24:59 · 77 阅读 · 0 评论 -
设计模式学习记录 状态模式&策略模式
借用下图 来源https://blog.csdn.net/qiulongtianshi/article/details/7570021面向对象的核心:可维护,可扩展,可复用,灵活性好。七大基本原则1. 单一职责 SRP核心:解耦和增强内聚性(高内聚,低耦合)2.开放封闭原则 OCP Open close Pricleple(1)可以把这些不变的...原创 2018-11-25 13:32:22 · 146 阅读 · 0 评论 -
状态模式C#场景控制
下面是控制场景的类图,可能会有疑惑,控制场景就简单的用 SceneManager.LoadScene()这样 不就可以了吗,但是, 每次来了新工程 ,都要这样复用,很繁琐,不如用设计模式,减少重复性的工作,分离,解耦合,这样一来, 别的工程来了就可以使用了。场景控制的应用 状态模式的原型 using System.Collections;using ...原创 2018-11-07 19:56:46 · 387 阅读 · 0 评论 -
设计模式-策略模式 C#
先放张UMI类图还是 挺好理解的, context上下文的 主要 有个对策略类的 引用,最终 给客服端引用。 下面是在unity中的 代码using System;using System.Collections;using System.Collections.Generic;using UnityEngine;abstract class Strategy{ //...原创 2018-06-19 15:53:57 · 503 阅读 · 0 评论 -
unity设计模式-状态模式
状态模式在状态模式(State Pattern)中,类的行为是基于它的状态改变的。这种类型的设计模式属于行为型模式。在状态模式中,我们创建表示各种状态的对象和一个行为随着状态对象改变而改变的 context 对象。介绍意图:允许对象在内部状态发生改变时改变它的行为,对象看起来好像修改了它的类。主要解决:对象的行为依赖于它的状态(属性),并且可以根据它的状态改变而改变它的相关行为。何时使用:代码中包...转载 2018-04-25 11:26:24 · 956 阅读 · 0 评论