![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
普罗旺斯D先生
这个作者很懒,什么都没留下…
展开
-
代理设计模式
代理,顾名思义,就是一个中间层,中介。proxy这里借用大话设计模式的例子,再回顾巩固一下代理模式。例子:一个男孩想要送给一个女孩礼物,但是不好意思。怎么办,只能找一个中间的男孩,帮忙把礼物送给女孩,这个中间的男孩其实就是代理。上代码,首先写一个女孩的类,很简单,只有一个名字就够了。这样女孩就确定了 public class Girl { public string Name { get; set; } }定义一个公共的接口,规范两个男原创 2022-03-13 22:56:27 · 423 阅读 · 0 评论 -
装饰器模式
装饰器模式开始看着确实挺复杂的,通过例子来解释,能清楚一点。解决的问题: 需要再现有的对象上,添加功能,可以添加很多功能,运行时候的顺序要求。顺序可以调整。创建一个情景,有一个课程,有免费的学员和Vip学员,两个学生都有学习的方法。这时候添加一个需求,有的学生会先看视频,再写作业,有的先写作业,再看视频。要求不破坏学生类的封装,添加功能。装饰器模式的角色:1.学生类,可能有学生的抽象类;2.装饰器的基类,他去继承学生类,或者学生类的父类;3.装饰器的具体实现类,继承于装饰原创 2022-03-13 17:12:13 · 409 阅读 · 0 评论 -
简单工厂模式
据说简单工厂模式不算是Gof中的的设计模式。。。例子:计算器,计算加减乘除,后期可方便的添加其他运算类型1.一般上来可能不考虑面向对象,直接一顿if else,类似这种,可以考虑一下,如果为了方便拓展,一定看一下判断里面有没有相同的类似的类型。2.考虑抽象要下面是不考虑面向对象,面向过程: public enum OperationType { jia, jian, cheng, chu }原创 2022-02-27 22:24:33 · 135 阅读 · 0 评论