这一节中包含有在编码时,需要检查的内容。

#Coding

  • [ ] 你是否定义了在编写代码时,多少工作应该在编码之前完成预先设计,多少工作在真正编码时在键盘上完成?
  • [ ] 你是否定义了命名、注释和布局的编码约定?
  • [ ] 你是否定义了架构所隐含的特定编码实践,例如如何处理错误条件、如何解决安全性、类接口将使用哪些约定、重用代码将应用哪些标准、在编码时应该多大程度的考虑性能问题等等?
  • [ ] 你是否已确定如何使用某语言进行编程,而不是受到该语言的限制?(利用语言 还是 用语言

#团队合作

  • [ ] 你是否定义了集成过程——也就是说,你是否定义了程序员在将代码合入主代码前必须执行的具体步骤?
  • [ ] 程序员会结对编程,还是单独编程,还是两者的组合?(测试和开发的结合关系)

#质量保证

  • [ ] 程序员会在编写代码之前为其代码编写测试用例吗?
  • [ ] 程序员是否会为他们的代码编写单元测试,无论他们是事先写还是事后写?
  • [ ] 程序员在合入代码之前会在调试器中单步执行代码?
  • [ ] 程序员会在合入代码之前对其进行集成测试吗?
  • [ ] 程序员会审查或检查彼此的代码吗?

#工具

  • [ ] 你选择了版本控制工具吗?
  • [ ] 你是否选择了编程语言,语言版本或编译器版本?
  • [ ] 你是否选择了某框架,或者明确决定不使用框架?
  • [ ] 你是否允许使用非标准语言功能?
  • [ ] 你是否已经确定并获得了你需要使用的其他工具——编辑器、重构工具、调试器、测试框架、语法检查器等等?