软件系统腐化的四个原因

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

1.过于僵硬(regidity)

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

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

2.过于脆弱(fragility)

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

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

3. 复用率低(Immobility)

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

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

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

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

4. 粘度过高(viscosity)

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

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

 

posted @ 2018-02-22 17:29  IT圈圈  阅读(642)  评论(0编辑  收藏  举报

皮皮虾美剧