组件(包)设计原则

     组件,或者叫程序集,是指一种能够被独立部署的二进制单元,一般是以DLL的形式存在的。针对大型的软件系统,良好的组件设计能够把系统分解为一些小的组件,从而使每个开发团队都可以只关注单个的组件而无需关心整个系统。

组件设计需要遵守如下原则:

 

  1. 重用-发布等价原则(REP

即重用粒度就是发布粒度。一个组件中的类要么都是可以重用的,要么就都不可以重用。

 

  1. 共同重用原则(CRP)

一个组件中的所有类应该是共同重用的,如果重用了组件中的一个类就应该重用组件中的所有类。即放入一个组件中的类是不可分开的,仅仅依赖其中一部分类的情况是不存在的。

 

  1. 共同封闭原则(CCP)

即,一个组件不应该包括多个引起变化的原因。组件中所有类对同一种性质的变化是共同封闭的,一个变化如果对一个封闭的组件产生影响,则将对该组件中的所有类产生影响。但对其他组件将不产生影响。该原则类似开放封闭原则,即对修改应该是封闭的,但对扩展应该是开放的。

 

  1. 无环依赖原则

在组件的依赖关系图中不能出现环。通过将系统划分为不同的可发布组件,每个组件作为一个可工作单元有一个或一组开发人员负责。完成之后发布给其他开发人员使用,并通过赋予该组件一个版本号来跟踪该组件。对该组件的更改产生的影响不应该必须扩展到其他组件。

 

  1. 稳定抽象原则(SAP)

组件的抽象程度应该与其稳定程度保持一致。即,一个稳定的组件应该也是抽象的,这样他的稳定性就不会无法扩展。另一方面一个不稳定的组件应该是具体的,因为他的不稳定性使其内部代码更易于修改。因此如果一个组件是稳定的,那他就应该包含一些抽象类,这样就可以对他进行扩展。

组件设计原则

 组件,或者叫程序集,是指一种能够被独立部署的二进制单元,一般是以DLL的形式存在的。针对大型的软件系统,良好的组件设计能够把系统分解为一些小的组件,从而使每个开发团队都可以只关注单个的组件而无需关心整个系统。

组件设计需要遵守如下原则:

 

  1. 重用-发布等价原则(REP

即重用粒度就是发布粒度。一个组件中的类要么都是可以重用的,要么就都不可以重用。

 

  1. 共同重用原则(CRP)

一个组件中的所有类应该是共同重用的,如果重用了组件中的一个类就应该重用组件中的所有类。即放入一个组件中的类是不可分开的,仅仅依赖其中一部分类的情况是不存在的。

 

  1. 共同封闭原则(CCP)

即,一个组件不应该包括多个引起变化的原因。组件中所有类对同一种性质的变化是共同封闭的,一个变化如果对一个封闭的组件产生影响,则将对该组件中的所有类产生影响。但对其他组件将不产生影响。该原则类似开放封闭原则,即对修改应该是封闭的,但对扩展应该是开放的。

 

  1. 无环依赖原则

在组件的依赖关系图中不能出现环。通过将系统划分为不同的可发布组件,每个组件作为一个可工作单元有一个或一组开发人员负责。完成之后发布给其他开发人员使用,并通过赋予该组件一个版本号来跟踪该组件。对该组件的更改产生的影响不应该必须扩展到其他组件。

 

  1. 稳定抽象原则(SAP)

组件的抽象程度应该与其稳定程度保持一致。即,一个稳定的组件应该也是抽象的,这样他的稳定性就不会无法扩展。另一方面一个不稳定的组件应该是具体的,因为他的不稳定性使其内部代码更易于修改。因此如果一个组件是稳定的,那他就应该包含一些抽象类,这样就可以对他进行扩展。

转载于:https://www.cnblogs.com/hjzhang/archive/2011/05/16/2047895.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值