代码检查对于开发非常重要,一些大规模的应用变得越来越难以维护,往往和代码检查直接相关。对于一个规范的开发过程而言,代码检查是重要但容易被忽视的一个步骤:或者检查不仔细、不认真,或者检查的内容不足。

    代码检查主要包括两个方面:一是设计附合度检查;一是代码逻辑检查。

    设计附合度检查

    检查代码是否按照设计文档编写。首先需要检查的就是包依赖关系,是否在代码中引入了没有在设计中指定的包?这是最重要的一个检查点,引入了设计中未定义、未指明的包是大规模应用越来越难以维护的直接罪魁祸首之一。设计可能没有考虑到需要附加的包中的类,这是正常的。当编写代码的程序员遇到这种情况时,应该和设计人员沟通,一起来解决这个问题,而不是养成随手增加引入包的习惯。如果每个程序员都这样操作,可以想像一个项目最终会变成什么样子。

    其次,要检查设计中确定的方法的Signature。是否由指定的protected变成了public?是否修改了方法名、调用参数和返回类型?这些细节也可能会违反设计师的初衷,把本来设计师深思熟虑的结果变成考虑不足的代码。这些地方是影响代码微结构的因素之一。

    设计附合度检查一般由设计人员执行。

    代码逻辑检查

    代码逻辑检查是多数实行代码检查制度的公司重点检查的内容。它检查代码是否存在逻辑上的错误。这项检查的目的是尽早发现并解决潜在的缺陷,一般由有经验的程序员同行执行。

    代码检查,我们遗漏了什么?

    代码逻辑检查不是代码检查的主要内容,因为在调试、测试阶段逻辑问题基本上都可以被发现。在代码检查阶段检查代码逻辑,目的仅仅是为了降低成本,早发现错误可以大速度降低成本。

    代码检查的真正重点,也是我们忽略的部分,就是设计附合度的检查。任何调试、测试都不能发现这方面的问题,因为它是附合逻辑的;存在设计附合度问题的程序在运行上不会有任何问题,它只是让你的设计变成一堆废物,让你的软件越来越不可维护。

    现在你知道了,不要再忽略这个检查了!