随笔分类 -  设计模式学习

对于设计模式定义的理解,包括一些通俗的描述;只面向新手,辅助理解各种设计模式
摘要:1、写在前面 这个模式是特意放在最后才写出来,因为我看了3遍也没有完全理解这个模式的含义,这里只能是暂时按照书中的定义挪过来了。其实可以粗略的说像IE等浏览器其实也是在解释HTML文法,将客户端传来的HTML标记文本转换成相应的网页格式展示给用户(当然,浏览器程序自身还有很多其他复杂的逻辑,这里只是 阅读全文
posted @ 2016-12-25 21:46 花火灬流年 阅读(284) 评论(0) 推荐(0) 编辑
摘要:0、前言 这一段时间一直在看设计模式,里面分多次提到几个设计原则,看了几次发现记不清楚,还是得自己动手总结一下吧,把书上的理论先理解写下来再说喽。 1、单一职责原则 定义:不要存在多于一个导致类变更的原因,通俗的说就是一个类只负责一项职责。 优点 降低类的复杂度,一个类只负责一个职责,其逻辑一定会比 阅读全文
posted @ 2016-12-22 22:25 花火灬流年 阅读(957) 评论(0) 推荐(0) 编辑
摘要:1、前奏理解 书中是以人类的性别来引出这个模式,因为只有两种性别,也就是说数据结构是稳定的,因此非常适合用来理解访问者模式,而这也是访问者模式使用的前提“数据结构相对稳定”。但是,有一句话说的我也是一惊:这算是GoF中最复杂的一个模式!所以这里我仅仅把我未入门的理解写下来。 2、定义 访问者模式(V 阅读全文
posted @ 2016-12-18 21:46 花火灬流年 阅读(210) 评论(0) 推荐(0) 编辑
摘要:1、预习 今天在程序运行的间隙看了一遍这个模式,说实话还真不太懂是什么意思。只是模糊的这么理解:你在开发中可能需要创建大量的对象,而这些对象在比较细的粒度上有非常大相似性,这时候你为了共享这些细粒度的对象,就会用到享元模式(可能说法上不太合适,有待深入使用和理解)。同时,关于这个模式更多的是用在底层 阅读全文
posted @ 2016-12-15 22:24 花火灬流年 阅读(160) 评论(0) 推荐(0) 编辑
摘要:1、预习 书中是以联合国的例子来说明中介者模式的理解,即世界上各个国家之间发生事务时的交流解决方式,大致来说每个国家都不必要与每个具体的国家接触,而是可以通过联合国来与其他国家交流,这即是中介模式。如果以我们使用最多的例子来说的话(C#+VS2013),想想我们经常建立的Windows窗体应用程序, 阅读全文
posted @ 2016-12-14 21:10 花火灬流年 阅读(179) 评论(0) 推荐(0) 编辑
摘要:1、预习 模式学习情境入口:以职员的请假或者加薪为例,当一个职员请假时,一般是一个这样的顺序:首先由直管经理处理,如果处理不了则上传到总监处,如果再处理不了上传到总经理处,由最高级的管理者处理。将这样一个处理的链称之为“职责链”。 2、定义 职责链模式:使多个对象都有机会处理请求,从而避免请求的发送 阅读全文
posted @ 2016-12-13 21:59 花火灬流年 阅读(176) 评论(0) 推荐(0) 编辑
摘要:1、预习 在这里我直接引用书里的例子(散户烧烤摊VS固定烧烤店)来比喻:对于烧烤摊来说,每一个客户都是直接与老板打交道,老板需要记录每一个客户的需求以及变化;而在烧烤店里你只需要将单子递给服务员,并不需要见到烤肉的人。说白了就是‘行为请求者’与‘行为实现者’之间是紧耦合还是松耦合的问题。所以命令模式 阅读全文
posted @ 2016-11-11 21:15 花火灬流年 阅读(178) 评论(0) 推荐(0) 编辑
摘要:1、写在前面 今天先通读了一遍桥接模式的定义以及例子,但是不是很懂;里面许多名词以及语句的含义跟以前自己理解或者说通用的有些差别,还没来得及仔细琢磨;但是先写下来自己的能记住的两点:①紧耦合程序和松耦合程序,除了从类之间的关系上来说,还有一方面是从继承的角度来说,因为子类继承了父类,所以父类变,子类 阅读全文
posted @ 2016-11-08 21:31 花火灬流年 阅读(157) 评论(0) 推荐(0) 编辑
摘要:1.定义 单例模式保证一个类仅有一个实例,并提供一个访问他的全局访问点。 通常我们可以建立一个全局变量使得一个对象被多个类所访问,但是这样还是无法防止你多次实例化这个对象;这时候一个最好的方法就是:让类自身来负责保证他的唯一实例。这个类保证没有其他实例可以被创建,并且它可以提供一个访问自身实例的方法 阅读全文
posted @ 2016-10-23 18:16 花火灬流年 阅读(218) 评论(0) 推荐(0) 编辑
摘要:1.定义 提供一种方法顺序访问一个聚合对象内部的各个元素,而又不暴露该对象的内部表示。 2.使用场合及理解 当你需要访问一个聚集对象,而且不管这些对象是什么,都需要遍历的时候,你就应该考虑使用迭代器模式;可以这么说,当你对聚集有多重方式遍历时,考虑使用迭代器;迭代器模式为遍历不同的聚集结构提供开始、 阅读全文
posted @ 2016-10-23 17:04 花火灬流年 阅读(212) 评论(0) 推荐(0) 编辑
摘要:1、定义 将对象组合成树形结构以表示“部分——整体”的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。 类比理解:复制文件时,可以一个一个单独复制,也可以一次将整个文件夹复制了;再比如文本编辑,可以给单个字进行加粗、变色、改字体,也可以对整段文字进行同样的操作。这个问题实际上就是要求 阅读全文
posted @ 2016-10-20 21:39 花火灬流年 阅读(173) 评论(0) 推荐(0) 编辑
摘要:关于‘备忘录模式’的定义,及自身理解 阅读全文
posted @ 2016-10-13 20:08 花火灬流年 阅读(176) 评论(0) 推荐(0) 编辑