博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于“代码规范”,“Review”和“Check list”
阅读量:6449 次
发布时间:2019-06-23

本文共 1533 字,大约阅读时间需要 5 分钟。

      关于“代码规范”,“Review”和“Check list”,就我个人理解,这三者相辅相成。代码规范是在编程时就该注意的,为Review减轻负担。而要进行Review,又需要一个Check list作为支撑。在进行Review过程中,如若发现代码中遗漏了什么规则,则又需要在自己的代码规范和Check list中添加相应的项目。

      一.我们先从“代码规范”说起。

      http://blog.csdn.net/kimylrong/article/details/7700311  在这篇博客中主要谈到了关于JAVA编写的三大点代码规范,虽然略显笼统,但就大体方向而言让人容易掌握。

      https://www.douban.com/note/82618786/   这篇文章则更加具体的谈论了JAVA编写的代码规范,并结合实例,一目了然。

      http://wenku.baidu.com/link?                                       url=ZEQyZjRUBBqcvJzkEalC8PdJBvW0twabaZUQPUtilnOpflFbgq31s1HmlACRFNvF5uJ_z47YNiLP2zLaKoA4elJEjJL3PfPQL2_9VHhC9Z3

      这篇文章写得是最为详细的,小到代码缩进、对齐,大到模块设计、输入控制等等。

      看了这么多关于代码规范的文章,说实话,自己的对于代码规范的想法始终停留在两点:1.格式。   2.注释。        再仔细想想,似乎还有一点,“规则”,例如:命名规则、定义规则等等。但再仔细一想如果说“规则”,那“格式”与“注释”也都应该属于“规则”之中。故还是具体到“格式”,“注释”两点。

 

      二. 再来说说“Review”。

      我们为什么要Review?Review要做些什么?这两点必须明确。

      Review的目的是什么?目的不明,结果也就无意义。个人觉得有以下几个目的:

      1.在项目初期就能发现代码中的BUG,提早解决。

      2.发现的问题可以与项目组成员共享,以免发生类似错误。

      3.让项目组所有人都参与Review,利于项目、工程或代码的修改与维护。

 

      从目的出发,Review到底要做什么就非常清楚了。

      1.根据事先定好的Check list,进行找错,纠错。

      2.理解项目、工程或代码的具体功能和作用。

      3.在理解功能和作用的基础上,进行针对性的检查。例如:代码完整性检查,代码健壮性检查等等。

 

      三.最后来说说Check list。

      不多说,直接上文章。

      http://uedc.163.com/4308.html    Web交互设计优化的简易check list

         http://blog.sina.com.cn/s/blog_8c78002c0100ttmw.html     这个Check list实例,说实话,虽然样式十分粗糙,但条理还是很清晰的。

         

         接下来是我的Check list。直接借鉴http://blog.jobbole.com/83595/   此博客中的常规项。在随后的学习生活中将继续优化。

         

      1.代码能够工作么?它有没有实现预期的功能,逻辑是否正确等。

 

      2.所有的代码是否简单易懂?

 

      3.代码符合你所遵循的编程规范么?这通常包括大括号的位置,变量名和函数名,行的长度,缩进,格式和注释。

 

      4.是否存在多余的或是重复的代码?

 

      5.代码是否尽可能的模块化了?

 

      6.是否有可以被替换的全局变量?

 

      7.是否有被注释掉的代码?

 

      8.循环是否设置了长度和正确的终止条件?

 

      9.是否有可以被库函数替代的代码?

 

      10.是否有可以删除的日志或调试代码?

 

      如果上述内容有什么不妥之处,请老师指出。谢谢!

 

 

转载于:https://www.cnblogs.com/xiaym896/p/5272883.html

你可能感兴趣的文章
NSDate NSDateFormatter
查看>>
oralce中rownum理解
查看>>
leetcode 175. Combine Two Tables
查看>>
C#/ASP.NET完善的DBHelper,配套Model生成器
查看>>
如何给一个数组对象去重
查看>>
Guava包学习-Cache
查看>>
分享打造爆款书的方法,同时聊聊出版图书中的哪些事和哪些坑
查看>>
第8周作业
查看>>
2019-06-12 Java学习日记之JDBC
查看>>
灯箱效果(点击小图 弹出大图集 然后轮播)
查看>>
linux c 笔记 线程控制(二)
查看>>
samba服务器配置
查看>>
SpringMVC+Apache Shiro+JPA(hibernate)整合配置
查看>>
vue.js笔记
查看>>
【Unity3D入门教程】Unity3D之GUI浅析
查看>>
Hive 简单操作
查看>>
湘潭1247 Pair-Pair(树状数组)
查看>>
idea 不能粘贴复制问题
查看>>
IEnumerable<T>
查看>>
IntelliJ IDEA 注册码
查看>>