摘要: 使用中介模式,大家通过往中介发消息,和从中介接受消息。从而避免了多个端之间的耦合。就像你看房,你不需要联系各个房东,你只需要联系中介,由中介去联系各个房东和各个租客。 abstract class Mediator { public abstract void Send(string message 阅读全文
posted @ 2020-12-27 22:20 鑫茂 阅读(94) 评论(0) 推荐(0) 编辑
摘要: graph LR client--调用-->Handler ConcreteHandlerA--继承-->Handler ConcreteHandlerB--继承-->Handler Handler--引用-->Handler 当 Handler 处理请求时,可以选择自己处理或调用继任者处理该请求。 阅读全文
posted @ 2020-12-27 22:18 鑫茂 阅读(51) 评论(0) 推荐(0) 编辑
摘要: /// <summary> /// 烧烤的人 /// </summary> class Barbecuer { public void Meat() { Console.WriteLine("bbq meat"); } public void Vegetable() { Console.WriteL 阅读全文
posted @ 2020-12-27 22:15 鑫茂 阅读(62) 评论(0) 推荐(0) 编辑
摘要: // 硬件抽象类 abstract class HandsetBrand { // 硬件上安装的软件列表 protected IList<HandsetSoftware> _softwareList = new List<HandsetSoftware>(); public void AddSoft 阅读全文
posted @ 2020-12-27 22:12 鑫茂 阅读(71) 评论(0) 推荐(0) 编辑
摘要: class STWindow { static Window win; private STWindow() { } public static Window GetInstance() { if (win == null || !win.IsVisible) { win = new Window( 阅读全文
posted @ 2020-12-27 22:10 鑫茂 阅读(173) 评论(0) 推荐(1) 编辑
摘要: abstract class Component { protected string name; public Component(string name) { this.name = name; } public abstract void Add(Component c); public ab 阅读全文
posted @ 2020-12-27 22:09 鑫茂 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 打游戏的时候,存档; 场景:保存某个时刻的状态,一般用于针对的保存部分属性,如果是所有,直接调用 Clone 即可。 graph LR 角色Originator-->存档Memento 管理存档CareTaker-->存档Memento /// <summary> /// 角色类 /// </sum 阅读全文
posted @ 2020-12-27 22:07 鑫茂 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 1.适配器 graph LR id1(OracleUser)--继承-->id2(SqlUser) id3(MysqlUser)--继承-->id2(SqlUser) id4(Client)--调用-->id5(Adapt) id5(Adapt)--关联-->id2(SqlUser) style i 阅读全文
posted @ 2020-12-27 22:04 鑫茂 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 已有的双方无法很好的配合起来时,通过适配器,打通两者的联系。 class Target { public virtual void Request() { Console.WriteLine("普通请求"); } } class Adaptee { public void SpecificReque 阅读全文
posted @ 2020-12-27 22:02 鑫茂 阅读(48) 评论(0) 推荐(0) 编辑
摘要: abstract class State { public abstract void WriteProgram(Work w); } class ForenoonState : State { public override void WriteProgram(Work w) { if (w.Ho 阅读全文
posted @ 2020-12-27 22:01 鑫茂 阅读(62) 评论(0) 推荐(0) 编辑
摘要: class User { int _id; public int Id { get { return _id; } set { _id = value; } } string _name; public string Name { get { return _name; } set { _name 阅读全文
posted @ 2020-12-27 21:52 鑫茂 阅读(74) 评论(0) 推荐(0) 编辑
摘要: /// <summary> /// 抽象观察者接口 /// </summary> interface Observer { void Update(); } /// <summary> /// 具体观察者 /// </summary> class ConcreteObserver : Observe 阅读全文
posted @ 2020-12-27 21:47 鑫茂 阅读(68) 评论(0) 推荐(0) 编辑