软件系统腐化的四个原因

Posted itquanquan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件系统腐化的四个原因相关的知识,希望对你有一定的参考价值。

Rober .C. Martin指出,软件腐化的四个原因

1.过于僵硬(regidity)

表现:很难加入一个新功能,要波及很多模块,起初几天的工作,要很长时间才能实现。

对立面:可扩展性(extensibility),使新的模块更好插入。可以用开闭原则(O),里氏替换原则(L),依赖倒置(I),组合/聚合复用原则保证

2.过于脆弱(fragility)

表现:一个地方的修改,会引起其他的地方出现故障。

对立面:灵活性(flexibility),允许代码修改平稳的发生

3. 复用率低(Immobility)

表现:由于一块代码,很难在新的功能中使用,那么程序员倾向于不碰原来的代码,重新写自己的代码,甚至复制粘贴,然后修改下。

对立面:字面意思---提供复用率,不仅仅是代码的复用,还有

a.算法的复用,比如排序算法

b.数据结构的复用,比如队列,栈,树等这些数据结构都有十分透彻的研究。

4. 粘度过高(viscosity)

表现:开发中,破坏原来设计者的意图,达到更快的开发的目的。即权宜之计,牺牲长期的利益。比如修理收音机时,直接飞线短路,达到某个目的,但是牺牲了原有的设计。

对立面:可插拔性(Pluggability) 。某个有同样接口的类可以很容易替换另一个同样接口的类。

 

以上是关于软件系统腐化的四个原因的主要内容,如果未能解决你的问题,请参考以下文章

面试问题之操作系统:死锁的四个必要条件和解决办法

解决问题的四个步骤

死锁产生的原因及四个必要条件

操作系统—操作系统的四个特征

谈程序的腐化

SQLSERVER的四个系统数据库