![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
酬勤-人间道
这个作者很懒,什么都没留下…
展开
-
插件 框架 搭建(记录一下)
背景大家设计软件的时候,基本都是封装成库的形式来使用, 虽说这种方式大大提高了灵活性,但是远远达不到所加即所得.插件虽然也是库的形式,但是由于其设计理念.插件的灵活性远远大于单纯的库.当然,其中一些编写难度也随之提升.之前完成的项目,由于考虑到后期项目的灵活可配置.所以需要进行项目插件化(不亚于重写)设计需要里面核心就是:设计模式中的策略模式+ 迪米特依赖倒置法则. 由于这里使用了wpf这个框架(以后把Qt那版找机会发出来),所以 .net本身的优势. 反射, 结合这些知识,我们就可以着手设原创 2020-12-08 10:57:42 · 372 阅读 · 0 评论 -
组合模式
public class 组合模式_19 { /* 单元最小化.进行测试单元最小化 */ public abstract class Company { protected string name; public Company(string name) { this.name = name; ..翻译 2020-11-12 17:17:59 · 61 阅读 · 0 评论 -
模拟装饰者模式
/* 这里不要自己安装自己.否则无限循环递归就出不去了. */ //这里注意.不要自己递归调用自己. /// <summary> /// 自己设计一下这个模式的操作. /// </summary> public class ComponentSpace //模拟装饰者模式 { public abstract class Component { public..翻译 2020-11-12 17:17:27 · 72 阅读 · 0 评论 -
原型模式
public class 原型模式 { //原型 public abstract class MonkeyMode { public string ids { get; set; } public MonkeyMode(string _id) { ids = _id; } public abst..翻译 2020-11-12 17:16:50 · 68 阅读 · 0 评论 -
适配模式
class 适配模式 { #region 类适配模式.. public interface IThreeHandle { void Request(); } public abstract class TwoHandle { public void specificRequest() { Cons..翻译 2020-11-12 17:16:18 · 145 阅读 · 0 评论 -
桥接模式
public class 桥接模式 { #region 模拟的桥接模式案例 public abstract class TV { public abstract void on(); public abstract void off(); public abstract void tuneChangel(); } public class ch.翻译 2020-11-12 17:15:23 · 55 阅读 · 0 评论 -
模板方法
public class 模板方法 { //创建一套模板. 将改变的和不变的 分割开来. //写一个简单的案例测试一下呗. public abstract class TestTemplate { public abstract void MethodMath(); public abstract void MeghodEnglish(); public v..翻译 2020-11-12 17:14:51 · 53 阅读 · 0 评论 -
简单工厂模式
class 简单工厂模式 { /// <summary> /// 这里我们来尝试一下工厂模式.. /// </summary> /// <param name="args"></param> public abstract class Food { public abstract void Print(); }..翻译 2020-11-12 17:13:59 · 63 阅读 · 0 评论 -
观察者模式
public class 观察者模式_20 { //本质就是发布订阅形式.使用委托或者回调方式. abstract class observer { public abstract void Update(); } /// <summary> /// 具体观察者. /// </summary> class Conc..翻译 2020-11-12 17:13:31 · 70 阅读 · 0 评论 -
单一职责原则
class 单一职责原则 { //书里什么也没说.但基本就是.保证一个功能的完善以及闭环. }转载 2020-11-12 17:11:45 · 49 阅读 · 0 评论 -
代理模式
public class 代理模式 { /* 1. 追求者与被追求者共同继承同一个对象. 2. 追求者的行为方式,依据接口来实现. 3. 中间这个类.衔接 追求者和被追求者之间的平衡. 内置追求者. 把被追求者作为参数进行传入. */ interface GiveGift { void GiveDools(); void..转载 2020-11-12 17:11:04 · 56 阅读 · 0 评论 -
创建者模式
namespace Consol工厂模式{ public class 创建者模式 { public class Computer { public IList<string> ComList = new List<string>(); public void Add(string comName) { ComList.Add.转载 2020-11-12 17:10:21 · 64 阅读 · 0 评论 -
抽象工厂模式
namespace Consol工厂模式{ class 抽象工厂模式 { public abstract class Yabo { public abstract void Print(); } public abstract class yajia { public abstract void Print(); } publ...转载 2020-11-12 17:09:30 · 57 阅读 · 0 评论 -
备忘录模式
不多说了,记录一下写过的设计模式,免的忘了namespace Consol工厂模式{ public class 备忘录模式_8 { //记录状态,以及随时恢复这种状态 //备忘录 public class Memento { private string state; public Memento(string state) {转载 2020-11-12 17:08:56 · 50 阅读 · 0 评论 -
设计模式之:命令行模式
按自己对命令模式的理解.进行了一个简单的订餐情形演练,记录一下:主要是先抽象了一个基类person: {基类派生了服务员,厨师,顾客}, 其中每种做的食物,抽象成一种命令.最后使用的时候,就按照: 顾客进来,点餐-->服务员招待-->通知厨师做饭; 同时维护了一个订单系统,便于服务员随时参看并更新顾客信息;public class 命令模式_23 { //模拟一下实际的餐厅的运作模式. //顾客... //餐厅: .原创 2020-11-12 14:24:35 · 357 阅读 · 0 评论