![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
记录一系列设计模式,并给出对应例子。正所谓纸上得来终觉浅,绝知此事要躬行。
雷鸣_IT
1,纸上得来终觉浅,绝知此事要躬行。
2,黑发不知勤学早,白首方悔读书迟。
展开
-
设计模式-发布与订阅(Unity版本)
using System.Collections;using System.Collections.Generic;using UnityEngine;public static class ObaseverTest{ public delegate void EventCallback(Object args); static Dictionary<string, List<EventCallback>> EventDic = new Dict.原创 2022-03-21 14:43:40 · 4713 阅读 · 0 评论 -
设计模式-发布订阅模式(typescript版本)
实际操作:/** * example: * 订阅: * ObserveEvent.on(EventName,this.userInfo,this); * 发布: * ObserveEvent.emit(EventName,{userName:"小明",age:18,sex:"man"}); * 取消订阅: * ObserveEvent.on(EventName,this.userInfo); */// call is faster than apply, optimize less原创 2022-03-21 13:55:56 · 1200 阅读 · 0 评论 -
设计模式-观察者模式与发布订阅模式
一、发布与订阅模式通常都有一个调度中心管理。订阅者会使用事件名称进行注册。发布者在发布消息的时候,主要是根据事件名称进行发布,并不关心谁注册了该事件。所以该模式实现了发布与订阅之间彻底的解耦。重点:有一个根据事件名称进行管理的调度中心。根据上图可知,一般该模型的数据存储使用 Map或Dictionary。即键值<key,value>对形式存储, key 是事件名,value 是列表(数组)。可直接根据key值获取到value值,不需要进行查找。同时该模型,一般都是单例模式(具体根原创 2022-03-21 01:01:32 · 398 阅读 · 0 评论