[url]http://dreamhead.blogbus.com/logs/57388446.html[/url]
那么我们经常说要重构,那么凭什么呢?有什么指标可以说明必须要重构了呢?Bad smell吗?那么Bad smell是不是某种度量呢?重构完成之后,你说质量变好了。那么又有什么根据呢?我觉得发现软件的Internal Quality。然后基于Evidence去做判断是非常重要的。只是度量Internal Quality的指标我们还没有找到,而且即便找到了也不是只抓几个数字,因为数字的造假是非常容易的。
目前我比较倾向于从依赖和耦合的角度看待质量问题。如果能够从包的依赖得出一些数据,然后从SCM拿到包的改动情况。两下比较就可以知道是不是有类,包,模块之间的不合理依赖了。比如,全局的Errors.h肯定就是有问题的东西。被依赖最多的东西应该是最稳定的,但是如果改动多了,就说明它根本就不能被全局依赖。
那么我们经常说要重构,那么凭什么呢?有什么指标可以说明必须要重构了呢?Bad smell吗?那么Bad smell是不是某种度量呢?重构完成之后,你说质量变好了。那么又有什么根据呢?我觉得发现软件的Internal Quality。然后基于Evidence去做判断是非常重要的。只是度量Internal Quality的指标我们还没有找到,而且即便找到了也不是只抓几个数字,因为数字的造假是非常容易的。
目前我比较倾向于从依赖和耦合的角度看待质量问题。如果能够从包的依赖得出一些数据,然后从SCM拿到包的改动情况。两下比较就可以知道是不是有类,包,模块之间的不合理依赖了。比如,全局的Errors.h肯定就是有问题的东西。被依赖最多的东西应该是最稳定的,但是如果改动多了,就说明它根本就不能被全局依赖。