Code Review(代码审查)-推荐

Code Review是什么?

Code Review是一种用来确认方案设计和代码实现的质量保证机制,通过这个机制我们可以对代码、测试过程和注释进行检查。

Code Review主要用来在软件工程过程中改进代码质量,通过Code Review可以达到, 在项目早期就能够发现代码中的BUG。

Code Review 主要 Revivew 什么?

代码设计/构思方面:

1、单一职责原则(SRP)

这是经常被违背的原则。一个类只能干一个事情 , 一个方法最好也只干一件事情。 比较常见的违背是一个类既干 UI 的事情,又干逻辑的事情 , 这个在低质量的客户端代码里很常见。

2、行为是否统一

1.比如缓存是否统一,错误处理是否统一, 错误提示是否统一, 弹出框是否统一 等等。

2.同一逻辑 / 同一行为 有没有走同一 Code Path?

3、代码污染

代码有没有对其他模块强耦合 ?

4、重复代码

主要看有没有把公用组件,可复用的代码,函数抽取出来。

5、开放封闭原则(OCP)

就是好不好扩展。 Open for extension, closed for modification.

6、接口隔离原则(ISP)

使用多个隔离的接口,比使用单个接口要好。

7、面向接口编程 和 不是 面向实现编程

主要就是看有没有进行合适的抽象, 把一些行为抽象为接口。

8、健壮性

1.对 Corner case 有没有考虑完整,逻辑是否健壮?有没有潜在的 bug?

2.有没有内存泄漏?有没有循环依赖 ?(针对特定语言,比如 Objective-C) ?有没有野指针?

3.有没有考虑线程安全性, 数据访问的一致性

9、错误处理

有没有很好的 Error Handling?比如网络出错,IO 出错。

10、改动是不是对代码的提升

新的改动是让代码质量继续恶化,还是对代码质量做了修复?

11、效率 / 性能

1.客户端程序 对频繁消息 和较大数据等耗时操作是否处理得当。

2.关键算法的时间复杂度多少?有没有可能有潜在的性能瓶颈。

12、可读性 / 可维护性

1.字段、变量、参数、方法、类的命名是否合理。

2.字段、变量、参数、方法、类的注释是否完整。


如何进行Code Review?

1.多问问题。多问 “这块儿是怎么工作的?” “如果有 XXX case,你这个怎么处理?”

2.每次提交的代码不要太多,最好不要超过 1000 行,否则 review 起来效率会非常低。

3.当面讨论代替 Comments。 大部分情况下小组内的同事是坐在一起的,face to face 的 code review 是非常有效的。

4.区分重点,不要舍本逐末。 优先抓住设计,可读性,健壮性等重点问题。

Code Review应该注意什么?

1.作为审查者:代码审查是一种学习,是表扬,是获得反馈,是一种十分社交性的活动。代码审查应该是有趣的,不要让它变的无聊。

2.作为开发人员:代码审查是针对代码,不是针对你。不要把代码审查当成互相讽刺的论坛和相互批判的工具。反而,代码审查是提高你的一种路径。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • AtWiredrive, we do a fair amount of code reviews. I had n...
    civic星星之火阅读 1,215评论 0 3
  • error code(错误代码)=0是操作成功完成。error code(错误代码)=1是功能错误。error c...
    Heikki_阅读 3,464评论 1 9
  • 今天是我的生日,除了老妈大清早发微信祝福我生日快乐,其他的孩子啊老公啊朋友啊,似乎没有一个能想得起今天是我的生日,...
    月亮上的洋葱阅读 380评论 0 0
  • 中秋第二天。桐桐感冒在家,咳嗽呕吐,很不舒服也很焦躁地一直哭。晚上开着车带着她到处找药,娄底这小地方却没有猴耳环消...
    赫墨思阅读 127评论 0 0
  • 1.别去找截图的方法了,直接将UIView对象转成图片就完事了 分享自己搞去
    biyu6阅读 1,213评论 0 1