Terry's blog

Focus on bigdata and cloud.

博客园 首页 新随笔 联系 订阅 管理

2007年9月14日 #

摘要: 无处不在的Template Method 如果你只想掌握一种设计模式,那么它就是Template Method! 动机(Motivate): 变化 -----是软件设计的永恒主题,如何管理变化带来的复杂性?设计模式的艺术性和复杂度就在于如何 分析,并发现系统中的变化和稳定点,并使用特定的设计方法来应对这种变化。 意图(Intent): 定义一个操作中的算法的骨架,而将一些... 阅读全文
posted @ 2007-09-14 11:21 王晓成 阅读(7990) 评论(1) 推荐(3)

摘要: [.NET(C#)] 把attribute翻译成特性,用来标识类,方法 把property翻译为属性,性质,用于存取类的字段 把markup翻译成标记,tag还是翻译成标签比较好 [.NET(C#)] .NET Framework的核心是其运行库的执行环境。 称为公共语言运行库(CLR)或.NET运行库. 通常将在CLR的控制下运行的代码称为托管代码(managed code). 在CLR执行开发... 阅读全文
posted @ 2007-09-14 09:41 王晓成 阅读(2060) 评论(1) 推荐(0)

摘要: 虚拟方法,由virtual声明,它允许在派生类中重写,也可以不重写。如果在派生类中重写时要声明override. Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> 1 public class myclass 2 { ... 阅读全文
posted @ 2007-09-14 09:33 王晓成 阅读(813) 评论(0) 推荐(0)

2007年9月13日 #

摘要: 直接与间接: 人们对复杂的软件系统常有一种处理手法,即增加一层间接层,从而对系统获得一种更为灵活、 满足特定需求的解决方案。 动机(Motivate... 阅读全文
posted @ 2007-09-13 12:42 王晓成 阅读(6699) 评论(0) 推荐(1)

2007年9月12日 #

摘要: 面向对象的代价 面向对象很好地解决了系统抽象性的问题,同时在大多数情况下,也不会损及系统的性能。但是,在 某些特殊的应用中下,由于对象的数量太大,采用面向对象会给系统带来难以承受的内存开销。比如: 图形应用中的图元等对象、字处理应用中的字符对象等。 动机(Motivate): 采用纯粹对象方案的问题在于大量细粒度的对... 阅读全文
posted @ 2007-09-12 11:29 王晓成 阅读(5720) 评论(0) 推荐(0)

2007年9月11日 #

摘要: LINQ是什么? 它是Language Integrated Query。 当我们要对数据库表进行查询的时候,我们一定会编写 "select * from sometable where ID = .."的语句。好,那我们现在根据LINQ的语法,完全可以将我们熟悉的SQL中像"select","from","where"等语句在.NET Framework环境中顺利使用并且大大提高开发的效率。 下... 阅读全文
posted @ 2007-09-11 17:33 王晓成 阅读(662) 评论(0) 推荐(0)

摘要: 动机(Motivate): 在软件开发系统中,客户程序经常会与复杂系统的内部子系统之间产生耦合,而导致客户程序随着子系统的变化而变化。那么如何简化客户程序与子系统之间的交互接口?如何将复杂系统的内部子系统与客户程序之间的依赖解耦? 意图(Intent): 为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 ... 阅读全文
posted @ 2007-09-11 11:49 王晓成 阅读(6882) 评论(1) 推荐(0)

2007年9月7日 #

摘要: 动机(Motivate): 组合模式有时候又叫做部分-整体模式,它使我们树型结构的问题中,模糊了简单元素和复杂元素的概念,客户程序可以向处理简单元素一样来处理复杂元素,从而使得客户程序与复杂元素的内部结构解耦。 意图(Intent): 将对象组合成树形结构以表示“部分-整体”的层次结构。Composite模式使得用户对单个对象和组合对象的使用具有一致性。 ... 阅读全文
posted @ 2007-09-07 16:30 王晓成 阅读(8305) 评论(0) 推荐(0)

2007年9月6日 #

摘要: 子类复子类,子类何其多 假如我们需要为游戏中开发一种坦克,除了各种不同型号的坦克外,我们还希望在不同场合中为其增加以下一种或多种功能;比如红外线夜视功能,比如水陆两栖功能,比如卫星定位功能等等。按类继承的作法如下: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.c... 阅读全文
posted @ 2007-09-06 15:55 王晓成 阅读(8597) 评论(0) 推荐(2)

2007年9月5日 #

摘要: 动机(Motivate): 在软件系统中,某些类型由于自身的逻辑,它具有两个或多个维度的变化,那么如何应对这种“多维度的变化”?如何利用面向对象的技术来使得该类型能够轻松的沿着多个方向进行变化,而又不引入额外的复杂度? 意图(Intent): 将抽象部分与实现部分分离,使它们都可以独立的变化。 ... 阅读全文
posted @ 2007-09-05 14:32 王晓成 阅读(8687) 评论(0) 推荐(2)