科泰北大青鸟java培训专家为你解答!
时间:2015-10-27
来源:科泰教育
你应该寻找什么?
哪种事情对人类来讲是值得的?我们可以在代码审查中发现,我们不能把事情委托给*个工具?
这有数量惊人的东西。这肯定不是*个详尽的清单,我们也不会去伟大的这里详细介绍他们中的任何*个。相反,这应该是你的组织中关于如何在代码审查中寻找东西这样*个对话的开始。
设计
新代码如何适合整体架构?
代码是否遵循扎实的原则,领域驱动的设计和/或其他设计范例团队的青睐?
新代码中使用了哪些设计模式?这些是否合适?
如果代码有*个混合的标准或设计风格,这种新的代码是否遵循目前的做法?代码是否按照正确的方向迁移,或者是否遵循了由于被淘汰的旧代码的示例?
代码在正确的地方?例如,如果代码是与订单相关的,则是以订单服务吗?
新代码可以在已有的代码中重复使用*些东西吗?新的代码是否提供了在现有代码中可以重用的东西?新的代码是否引入重复?如果是这样的话,它应该被重构为*个可重复使用的模式,这是可以接受的在这个阶段?
代码是工程设计的吗?它是否建立了不需要现在的可重用性?团队如何平衡重构和YAGNI的关系?
可读性和可维护性
这些名字(字段,变量,参数,方法和类)实际上反映了他们所代表的东西吗?
我能够读懂这些代码吗?
我能理解测试吗?
测试是否覆盖了*个很好的子集?他们是否包括常规和特殊情况?是否有没考虑到的情况?
异常错误消息可以理解吗?
功能性
代码是否达到了它的期望值?如果有自动测试能确保代码的正确性,那这个测试真的能测试出代码符合要求吗?
代码是否看起来像是*个如使用错误的变量的检查或不小心的细微的bug?
你有没有想过…?
是否存在潜在安全问题的代码?
是否有需要满足的监管要求?
对于不包括自动化性能测试的领域,新的代码是否会引入可避免的性能问题,如不必要的调用数据库或远程服务?
是否需要创建公共文档,或者修改现有的帮助文件?
是否有面向用户的消息被检查正确性?
是否有明显的错误需要停止这*工作的生产?代码要在测试数据库是否不小心,或者是有*个硬编码的存根需要替换成*个真正的服务?
-
上一篇:
我们要在代码审查中寻找什么?
-
下一篇:
零基础如何学习JAVA编程开发,
相关推荐: