敏捷开发中编写高质量 Java 代码
敏捷开发的理念已经流行了很长的时间,在敏捷开发中的开发迭代阶段中,我们可以通过五个步骤,来有效的提高整个项目的代码质量。
Java 项目开发过程中,由于开发人员的经验、Java 代码编写习惯,以及缺乏统一的标准和管理流程,往往导致整个项目的代码质量较差,难于维 护,需 要较大的测试投入和周期等问题。这些问题在一个项目组初建、需求和设计均具有不完全可预期性和完备性的全新项目中将尤为突出。
如图 1 所示, 敏捷开发过程经历需求调研, 用例分析和用例分解, 进入开发迭代阶段。 在每个迭代过程中,可以采用以下步骤来保证和提高整个项目的代 码 质量:统一编码规范、代码样式;静态代码分析(staticcodereview);单元测试;持续集成;代码评审和重构 (Review&;Refactor)。下文将针对每个步骤和其所 使用的工具、方法进行详细描述。
图 1.敏捷开发中的 Java 代码质量保证步骤
步骤一:统一编码规范、代码样 式
规范统一的编码会增加项目代码的可读性和可维护性,但实际情况往往是项目组内的 Java 代码开发人员的编码风格常常各不相同,这可能是由于不同 的 经验习惯或者缺乏编码规范方面的学习造成的。这样一来,其他项目成员或者维护人员在阅读项目代码时就需要花费更多的时间来理解代码作者的意图,所以 制定 并采取统一的编码规范就显得很重要。编码规范主要应包含以下几个方面:
◆一般规则和格式规范。例如代码缩进、
程序块规范、每行最大代码长度等。
◆命名规则。例如包名、类名、变量、方法、接口、参数等命名规范
◆文档规范。例如类文件头声明、类注释、成员变量和方法注释等规范。
◆编程规范。例如异常、并发、多线程等方面的处理方式。
◆其他规范。例如日志格式、属性文件格式,返回值和消息格式。
项目的编码规范可以参考已有的一些 Java 编程规范书籍和其他相关资料并结合项目的本身来制定,可供参考的书籍有《Java 编程风格》(英文书 名为: TheElementsof
JavaStyle)。编码规范要形成
文档,而且要简洁明了,并组织项目成员一起
学习,确保所有成员正确理解所有条目。
一旦编码规范确定,就可以利用 Eclipse 自身提供的功能来控制代码样式和格式。具体做法是,点击 Eclipse 的 Windows->Preference 菜单项,在打开 的 Preferences 对话框的左侧栏中找到 Java 节点下的子项 CodeStyle(如图 2),该项 和它的子项允许您对 Java 代码的样式进行控制。
图 2.Eclipse 代码样式设置窗口
例如,为了使用自动格式化工具,可以在 Eclipse 提供的默认代码格式配置的基础上建立自定义
的格式。在 Formatter 面板中,点击 New,输入新的名 字并选择一个默认的配置作为初始化格式,如图 3 所示。
图 3.创建新的代码格式配置
单击 OK 后就可以在新打开的窗口中进行修改定制自己需要的格式。如图 4 所示。
图 4.创建新的代码格式配置
修改完成后点击 Apply 保存所作修改。 同时可以点击 Export 将当前的格式定义导出成一个 XML 文件, 这样项目组的其他成员就可以很方便通 过点击图 3 中的 Import 按钮来导入该 XML 文件来使用同一个代码格式定义。
这样每次在提交代码到版本控制服务器前就可以通过 Eclipse 界面里的 Source->Format 菜单来对代码进行格式化,从而 使整个项目的代码具有相同的 格式。同样可以通过对 CodeStyle 下的其他项目进行设置来帮助对 Java 代码的样式进行控制。将所有这些样式文件导出成 XML 文件后,同编码规范一起归 档,供所有项目成员使用。
步骤二:静态代码分析
在完成
源代码的开发以后, 下面要进行的工作就是审视和测试代码。 除了通过运行测试代码来检查功能之外, 还能利用一些静态分析工具来快速、 直接地 提 高代码质量。静态代码分析工具并不需要运行代