设计模式
泡泡堂6688
这个作者很懒,什么都没留下…
展开
-
设计模式——六大原则
单一职责原则产生的原因:如果一个类中承担的责任太多其中承担的职责并不能都做到极致,所以在大多数的情况下,一件产品的职责单一一些会是一种更好的选择,例如:手机就是多个功能的集成,打电话,听音乐,拍照,但是一个音乐学家会用专用的设备听音乐,一个摄影师会相机拍照片不用手机。如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职能的能力,这种耦合会导致脆...原创 2019-05-03 15:27:09 · 144 阅读 · 6 评论 -
设计模式——外观模式
提出背景:小菜炒股,所以他需要了解股票的各种信息,预测他的未来,选择时机买入和抛出,这对于一个非专业的人来说是非常难的。小菜就可以选择买入基金,将钱投入基金,基金会买入几十枝好的股票,所以不会因为某个股票的大跌而影响收益;总结:由于众多的投资者和股票的耦合成都过高,反而会不利于操作,有了基金以后,总舵投资者和基金打交道,关心基金的上涨和下跌,具体的投资活动由基金的投资人来做。外观模式:定...原创 2019-05-02 10:23:09 · 119 阅读 · 8 评论 -
设计模式——建造者模式
概念:需要将一个复杂的对象的构建和他的表示分离,使得同样的构建过程有不同的表示意图建造者模式结构图结构图说明:builder为创建一个Product对象的各个部件指定的抽象接口:ConcreteBuilder:具体的建造者实现Builder接口,构造和装配各个部件Protect:具体的产品DIrector:构建一个使用Builder接口的对象;优点:建造者模式可以将一个产品的内...原创 2019-05-09 11:25:37 · 81 阅读 · 3 评论 -
设计模式——策略模式
策略模式:是一种定义一系列算法的方法,所有的算法完成的都是相同的工作,只是实现不同,它可以以相同的方式调用所有的方法,减少了使用算法类之间的耦合。策略模式代码实现namespace ConsoleApp49{ class Program { static void Main(string[] args) { conte...原创 2019-04-28 14:26:43 · 87 阅读 · 8 评论 -
设计模式——职责链模式
责任链模式:将能够处理同一类请求的对象连成一条链,使这些对象都有机会处理请求,所提交的请求沿着链传递。从而避免请求的发送者和接受者之间的耦合关系。链上的对象逐个判断是否有能力处理该请求,如果能则就处理,如果不能,则传给链上的下一个对象。**职责链模式结构:**模板代码: abstract class Handler { protected Handler s...原创 2019-05-12 14:55:26 · 100 阅读 · 3 评论 -
设计模式——单例模式
单例模式保证一个类仅有一个实例,并提供一个访问它的全局访问点,也就是说应用该模式的一个类只有一个实例。即一个类只有一个对象实例。.单例模式分类饿单例模式:类加载时实例化一个对象给自己的引用。懒单例模式:调用取得实例的方法如getInstance时才会实例化对象单利模式结构图:举例:为form1添加子窗体,要求点击菜单子窗体只出现一次 //form1代码 public partia...原创 2019-05-09 20:14:25 · 137 阅读 · 5 评论 -
C# Graphics 或Pen未能找到类型或命名空间
产生原因命名空间中没有引用using System.Drawing;解决方法:(1)打开项目资源管理器打开方法1.点击视图2.选择解决方案资源管理器3.在右侧会出现解决方案选中引用右击选择添加引用4.选择system.drawing5.在命名空间中输入using System.Drawing;6.加入命名空间后...原创 2019-05-01 09:45:19 · 1390 阅读 · 7 评论 -
设计模式——享元模式
定义运用共享技术有效地支持大量细粒度的对象两种状态:内部状态:在享元对象内部并且不会随环境改变的共享部分。外部状态:随环境的变化发生改变的,不可以共享的状态的外部状态。特点享元模式可以避免大量给常相似类的开销,在程序设计中有时需要生成大量细粒度的类的实例来表示数据,如果能发现这些实例除了几个参数外基本上都是相同的有时就能够收大富度的减少需要实例化的数量,如果能把那些参数移到类实例的外面...原创 2019-05-12 15:41:43 · 193 阅读 · 7 评论