设计模式笔记(19)—观察者模式(行为型)
Gof定义定义对象间的一种一对多的依赖关系,以便当一个对象的状态发生改变时,所有依赖于它的对象都得到通 知并自动更新 动机在软件构建过程中,我们需要为某些对象建立一种“通知依赖关系” ——一个对象(目标对象)的状态发生改变,所有的依赖对象(观察者对象)都将得到通知。如果这样的依赖关系过于紧密,将使软件不能很好地抵御变化。使用面向对象技术,可以将这种依赖关系弱化,并形成一种稳定的依赖关系。从而...
设计模式笔记(18)—迭代器模式(行为型)
Gof定义提供一种方法顺序访问一个聚合对象中的各个元素, 而又不暴露该对象的内部表示。 动机在软件构建过程中,集合对象内部结构常常变化各异。但对于这些集合对象,我们希望在不暴露其内部结构的同时,可以让外部客户代码透明地访问其中包含的元素;同时这种“透明遍历”也为“同一种算法在多种集合对象上进行操作”提供了可能。使用面向对象技术将这种遍历机制抽象为“迭代器对象”为“应对变化中的集合对象”提供了一种优雅的方式。
Lable和Literal控件的使用和区别
Lable和Literal这两个控件是我们非常熟悉的两个控件,都是用作内容呈现用的,但他们之间也有不同之处,分别应用于不同的地方。Lable控件会将内容呈现在html标签span中,即Lable控件的Text属性的值会包含在标签中。而Literal控件生成的代码则比较干净,它的Text属性的值将直接显示在页面中,看下面两段代码: Lable: 1234<asp:Label ID=&qu...
设计模式笔记(17)—中介者模式(行为型)
Gof定义用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式的相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。 动机在软件构建过程中,经常会出现多个对象互相关联交互的情况,对象之间常常会维持一种复杂的引用关系,如果遇到一些需求的更改,这种直接的引用关系将面临不断的变化。在这种情况下,我们可使用一个“中介对象”来管理对象间的关联关系,避免相互交互的对象之间的紧耦合引用...
设计模式笔记(16)—解释器模式(行为型)
Gof定义给定一个语言,定义它的文法的一种表示,并定义一种解释器,这个解释器使用该表示来解释语言中的句 子。 动机在软件构建过程中,如果某一特定领域的问题比较复杂,类似的模式不断重复出现,如果使用普通的编程方式来实现将面临非常频繁的变化。在这种情况下,将特定领域的问题表达为某种语法规则下的句子,然后构建一个解释器来解释这样的句子,从而达到解决问题的目的。 下面看下解释器模式的结构图: 基本...
武汉 再见
从毕业到现在一直呆在武汉,已经两年多了,经历了两个公司,现在的这个公司虽小,但氛围很好,和同事也关系也相处得非常融洽,最重要的是有一个人品极佳的经理,从他身上我也学到了很多。所以说这一年多的时间里我过得还不错,我很高兴在这样的公司工作这么长时间。 然而现在我却要离开,这个想法也是最近的几个月萌发的,我必须去大城市闯一闯,因为我已经不再年轻,在不闯就真的没机会了,目标城市北京,原因有三: 我...
jQuery上传插件Uploadify使用详解
本文Uploadify版本为2.1.0,已经过时,截止(2016-09-25)最新版本3.2.1的详细介绍请移步《jQuery上传插件Uploadify使用详解(3.2.1)》Uploadify是jQuery的一个上传插件,实现的效果非常不错,带进度显示。不过官方提供的实例时php版本的,本文将详细介绍Uploadify在Aspnet中的使用,您也可以点击下面的链接进行演示或下载。 官方下...