《代码质量》
书中把学习如何判断软件代码的质量设为目标。一旦掌握了这项艺术,我们就能
够将这种刚刚得到的判断能力应用在自己或者他人编写的代码上,以评估代码质量的方方面面,并对所发现的欠缺之处进行改进。我们也可以在与同事们讨论各种备选的实现方案时,运用所学到的关于代码质量的知识,理想状态下,推动软件项目朝着最正确的方向发展。
质量的重要性
?
质量、时间和成本是衡量所有软件项目成功与否的三个主要因素,而质量则是这些要素中唯一不能通过下达管理命令的方式来立刻改变的。此外,低劣的软件质量所带来的影响可能是相当严重而且难以挽回的。
?
通过自行车的实例,使用中的质量(quality in use),也就是真实的终端用户体验。广泛地讲,这个方面反映了用户在一个特定环境下达成自己目标的程度。一次完美的自行车骑驾体验。
?
外部质量属性(external quality attribute )当然会影响使用中的质量。如果你发现车闸反应迟钝,你可能就会由于撞到树干上而终止你此次在下坡路段上的旅行了。在软件世界里,外部质量方面包括可以通过运行软件确定的方方面面,一般是在一个测试环境中——图1-1(右上)显示了运行中的 JUnit 回归测试框架。通过彻底地测试并修正软件外部质量方面的问题,我们能够把终端用户将要面对的错误最小化
?
通过检查(而非试骑)自行车而确定的特性,在术语上,被称为内部质量属性(internal?quality attribute )。在软件中,这些属性都是可以通过检查而非运行来确定的。例如java中的Fingbugs工具。
?