摘要:
级别: 初级 关于作者 (iamlinx@21cn.com) 2004 年 3 月 01 日 在中小规模的软件中,对象和对象之间的协作关系就能够满足需要。但是当软件规模扩大,复杂度上升的时候,面向对象技术强调的协作却表现出另一个极端的特点-耦合度太高导致的复杂度。这时候就需要有一种新的方法来弥补面向对象技术的弱点。 大规模软件的特点 大 规模软件主要特点是复杂度。比较典型的例子是集成性的项... 阅读全文
2008年7月3日
摘要:
级别: 初级 林星 (iamlinx@21cn.com) 2004 年 3 月 01 日 框架是一种特殊的软件,它为软件开发带来了高度的重用性,但同时它也需要高技巧的设计。软件组织使用框架来积累知识,对推动软件开发是一种有效的方式,但前提是你能够了解如何设计一个框架。 什么是框架 在软件开发中出现过各种各样的框架,开源软件的兴起,使得各种各样的框架纷纷出现,例如,Apache组织下就拥有... 阅读全文
摘要:
2004 年 3 月 01 日 日构建是一项非常基础的软件开发实践,遗憾的是,并没有多少组织真正意识到它的好处。通过本章的讨论,你可以知道日构建对软件开发的意义,了解日构建的基本情况以及如何着手进行日构建。 什么是软件开发的有效管理 在 一个全国性的银行中,是什么保证复杂的资金清算的正确性的呢?每天,各个地方的网点在结束营业之前,需要保证账目、资金、票据的平衡;这些网点的数据不断 的汇集,在每... 阅读全文
摘要:
软件质量之路(1): 软件质量框架 级别: 初级 林星 (iamlinx@21cn.com) ... 阅读全文
2008年7月1日
2008年6月28日
摘要:
状态模式:允许对象的内部状态改变时改变它的行为,对想看起来好像修改了它的类。 状态模式和策略模式比较相似(类图就完全一样),都是A对象关联B对象,而B是可以更换的,A对象的功能随着B的具体实现的改变而改变。策略模式一般都是B对象在A对象所在的上下文中改变。而状态模式则是在B对象(状态对象)完成一定的操作在B对象内部吧A关联的B的具体实现更换。对于A来说就像是一个封闭的机器,内部实现了一... 阅读全文
2008年6月27日
摘要:
绪论 特性(Attributes)是一种崭新的声明性信息。我们不仅可以通过特性来定义设计层面的信息(例如help file, URL for documentation)以及运行时(run-time)信息(例如使XML与class相联系),而且我们还可以利用特性建立自描述(self-describing)组件。在这篇教程中,我们将会看到如何建立和添加特性到各种程序实体以及如何在运行时环境中获取特性... 阅读全文
2008年6月25日
摘要:
迭代器模式:提供一种方法顺序访问一个聚合对象中的各个元素,而有不暴露起内部的表示。 【Head First design pattern】 下面来分析一个Demo: 这个就是"聚合对象中的元素"。 Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com... 阅读全文
2008年6月24日
摘要:
策略模式: 定义算法族,分别封装起来,让他们可以互相替换,从而使算法的变化独立与算法的使用者。 类图: 比如说有一个类,需要用到排序,而排序方式自然是多种多样的,显然在这个类中直接用一个方法进行排序是不太好的做法,因为它不能做到在不同情况下使用不同的算法排序。我们怎样应对这中不同的需求呢。我们可以把不同的排序方法封装到不同的类(排序类)中,这些类实现一个共同的接口(排序接口)。... 阅读全文
2008年6月20日
摘要:
面向对象软件中类内聚度度量分析与研究 ■ 陈文海 葛 玮 郝克刚 侯 红 《计算机应用研究》 2007年第7期 摘要:对现有著名的类内聚度度量进行了较深入的分析,指出了各自存在的缺陷与不足,并在此基础上考虑到类内聚度受到类内有可能与外界组件产生耦合的成员的负面影响,提出了对CCM(C)再次修正后的MCCM2(C)。 关键词:面向对象; 软件度量; 内聚度 中图分类号:TP311.5文献标志码... 阅读全文