2014年3月26日
摘要: 软件的模式可以分为三种层次:架构模式,设计模式和代码模式架构模式是系统的高层次决策,包括:分层模式,业务逻辑层模式(脚本事务模式,活动记录模式,领域模型),对象关系映射层模式(工作单元模式,资源库,数据映射,标志映射,延时加载),表现层模式(mvc,mvp,mvvm) 阅读全文
posted @ 2014-03-26 09:58 dezi 阅读(198) 评论(0) 推荐(0) 编辑
  2011年5月1日
摘要: 定义:动态的给一个对象添加一些额外的职责,就增加新功能来说,它比继承更为灵活机构图:设计原则: 1. 多用组合,少用继承。利用继承设计子类的行为,是在编译时静态决定的,而且所有的子类都会继承到相同的行为。然而,如果能够利用组合的做法扩展对象的行为,就可以在运行时动态地进行扩展。2. 类应该对扩展开放,对修改关闭。关键点:1. 装饰者和被装饰有相同的超类型。 2. 可以用一个或多个装饰者包装一个对象。3. 装饰者可以在所委托被装饰者的行为之前或之后,加上自己的行为,以达到特定的目的。 4. 对象可以在任何时候被装饰,所以可以在运行时动态的,不限量的用你喜欢的装饰者来装饰对象。5. 装饰模式中使用 阅读全文
posted @ 2011-05-01 13:47 dezi 阅读(187) 评论(0) 推荐(0) 编辑
  2011年4月28日
摘要: 1. 避免将多个类放在一个文件里面。2. 一个文件应该只有一个命名空间,避免将多个命名空间放在同一个文件里面。3. 一个文件最好不要超过500行的代码(不包括机器产生的代码)。4. 一个方法的代码长度最好不要超过25行。5. 避免方法中有超过5个参数的情况。使用结构来传递多个参数。6. 每行代码不要超过80个字符。7. 不要手工的修改机器产生的代码。a) 如果需要编辑机器产生的代码,编辑格式和风格要符合该编码标准。b) Use partial classes whenever possible to factor out the maintained portions. 8. 避免利用注释解释 阅读全文
posted @ 2011-04-28 14:36 dezi 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 定义:策略模式定义了一个算法家族,并分别把它们封装成单独的类,这些算法类之间可以自由切换,而与客户端的调用无关,使用到的原则:开放--封闭原则,多用组合少用继承。一般的组成部分:1.抽象策略类:封装了所有要使用的算法等操作,共同点是这些操作在使用过程中很容易变化2.具体的策略类:继承了抽象策略类,分别实现相应的算法等操作,实际的算法部分3.上下文调控类:依赖于抽象策略类,产生具体的策略类,并实现相应的操作代码解析:1.定义抽象策略类: public interface Icalcute{ //公共的算法接口 public double calcuteresutl();}2.具体策略类实现了抽象 阅读全文
posted @ 2011-04-28 14:22 dezi 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 一,概述 在软件开发的过程中经常会有这种需求,为了达到不同的效果和目的,经常变换类对象,而这些类所要实现的接口对象相对稳定,这种情况就要考虑到简单工厂模式二,简单工厂模式的组成:1.工厂类:负责根据不同的逻辑产生不同的对象实例2.抽象产品类:一般是具体产品类要继承的父类或者是要实现的接口3.具体产品类:继承了父类的子类或者是实现了接口的子类,是工厂类要创建的类三,实例解说描述:公路的收费系统要根据不同的车型收取不同的费用1.定义抽象产品接口: public interface Icalcute{ public double calcuteresutl();}2.具体产品类实现了抽象产品接口// 阅读全文
posted @ 2011-04-28 12:44 dezi 阅读(202) 评论(0) 推荐(0) 编辑
  2011年4月27日
摘要: 准备:IrisSkin2.dll,Skins包(包含皮肤文件.ssk)使用步骤:1.新建项目,把IrisSkin2.dll和所有的皮肤文件复制到项目的bin\debug下2.为当前的项目添加对IrisSkin2.dll的引用3.把IrisSkin2.dll添加到工具箱中,生成SkinEngine控件(工具箱--选择项--浏览,找到这个IrisSkin2.dll,确定)4.从工具箱中拖动SkinEngine控件到要使用皮肤的窗体中5.通过代码调用皮肤文件例如:在窗体中要做到点击button1时,使用皮肤CalmnessColor2,代码如下 private void button1_Click( 阅读全文
posted @ 2011-04-27 21:57 dezi 阅读(1561) 评论(0) 推荐(1) 编辑
摘要: 1.设计模式与框架设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性框架通常定义了应用体系的整体结构类和对象的关系等等设计参数,以便于具体应用实现者能集中精力于应用本身的特定细节。框架主要记录软件应用中共同的设计决策,框架强调设计复用,因此框架设计中必然要使用设计模式。 另外,设计模式有助于对框架结构的理解,成熟的框架通常使用了多种设计模式,如果你熟悉这些设计模式,毫无疑问,你将迅速掌握框架的结构,我们一般开发者如果突然接触EJBJ2EE等框架,会觉得特别难学,难掌握, 阅读全文
posted @ 2011-04-27 00:30 dezi 阅读(182) 评论(0) 推荐(0) 编辑
  2011年4月26日
摘要: 1.WPF样式类似于Web应用程序中的CSS,在WPF中可以为控件定义统一的样式(Style)。样式属于资源的一种,例如为Button定义统一的背景颜色和字体:<Window.Resources><Style TargetType="Button"><Setter Property="Background" Value="Yellow" /></Style></Window.Resources><StackPanel><Button>Button A& 阅读全文
posted @ 2011-04-26 23:38 dezi 阅读(4970) 评论(0) 推荐(1) 编辑
摘要: 1.加载方法$(document).ready()与window.onload()函数的比较$(document).ready()是在dom完全就绪时调用,并不意味着所有关联的文件都已经下载window.onload()是所有关联的元素都已经下载完毕Juery中的onload()方法与window.onload()相同2.show():显示隐藏的匹配元素。可选参数duration一个字符串或者数字决定动画将运行多久。callback在动画完成时执行的函数。easing一个用来表示使用哪个缓冲函数来过渡的字符串。<p style="display: none">H 阅读全文
posted @ 2011-04-26 23:33 dezi 阅读(679) 评论(0) 推荐(0) 编辑
  2011年4月22日
摘要: 需要jquery文件,jquery圆角插件和渐变插件,下载后放到html中如下 <script src="../Lib/jquery.js" type="text/javascript"></script> <script src="Jquery.gradient.js" type="text/javascript"></script> <script src="jquery.corner.js" type="text/javasc 阅读全文
posted @ 2011-04-22 19:06 dezi 阅读(2312) 评论(1) 推荐(0) 编辑