大规模软件系统的产品周期
随着产品的不断发展,复杂度不断增加,生产率(Features数量)下降,质量(Bugs)不受控制,稳定性(Fluctuation)变差,架构变得腐化。
原则、模式、最佳实践和工具集
架构优化原则
1.单一职责
2.领域内聚
3.抽象接口隔离
4.重用
5.管理架构资产
模块解耦模式
1.模块重新划分
表现:
一个模块在领域中内聚性不强,...
分类:
其他好文 时间:
2014-09-23 23:55:05
阅读次数:
296
Bridge模式UML图:解决的问题:bridge模式完成了抽象和实现部分的分离。两边变化互相不影响,提高了模块的内聚性。原理:利用多态性,Abstraction类中包含AbstractionImp类的引用。Adapter模式:UML图解决的问题:开发过程中有时会使用第三方库,但本身程序的接口已经设...
分类:
其他好文 时间:
2014-09-11 13:49:23
阅读次数:
167
内聚性
内聚性,又称块内联系,指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。内聚性是对一个模块内部各个组成元素之间相互结合的紧密程度的度量指标。模块中组成元素结合的越紧密,模块的内聚性就越高,模块的独立性也就越高。理想的内聚性要求模块的功能应明确、单一,即一个模块只做一件事情。模块的内聚性和耦合性是两个相互对立且又密切相关的概念。
内聚性从弱到强:...
分类:
其他好文 时间:
2014-08-19 02:09:43
阅读次数:
195
(1)类的组织:一般排列顺序公共静态变量、私有静态变量、私有实体变量、公共函数、公共函数调用的私有工具(函数)
(2)类应该短小:
单一权责原则:类或模块只有一条加以修改的理由;
内聚:方法操作的变量也多,内聚性就越高;
保持内聚性就会得到许多短小的类
(3)为了修改而组织:对类加以组织,减低修改的风险
隔离修改:借住接口和抽象类来隔离修改细节带来的影响
...
分类:
其他好文 时间:
2014-07-31 13:24:16
阅读次数:
184
起因:模块独立性指每个模块只完成系统要求的独立子功能,并且与其他模块的联系最少且接口简单,两个定性的度量标准――耦合性和内聚性。耦合性也称块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。..
分类:
其他好文 时间:
2014-07-17 08:33:37
阅读次数:
318
设计模式的6大基本原则,其实是在面向对象的基础上发展而来的,通过他们实现了面向对象的三大基本特性继
承、封装和多态,从而提高程序的内聚性降低耦合性,使程序可维护、复用、可扩展、灵活性好。但是一切事物都有
个度,在运用这些原则的时候不能一味地生硬的用下去,在用之前一定要好好思量,从系统的整体性能出发,最大限
度地提高系统的灵活性。...
分类:
其他好文 时间:
2014-06-20 13:41:41
阅读次数:
183
对于单一职责原则,其核心思想为:
一个类,最好只做一件事,只有一个引起它的变化。单一职责原则可以看做是低耦合、高内聚在面向对象原则上的引申,将职责定义为引起变化的原因,以提高内聚性来减少引起变化的原因。职责过多,可能引起它变化的原因就越多,这将导致职责依赖,相互之间就产生影响,从而大大损伤其内聚性....
分类:
其他好文 时间:
2014-05-08 15:25:07
阅读次数:
232