写点什么

不做代码审查又怎样(一)

  • 2020-01-17
  • 本文字数:751 字

    阅读完需:约 2 分钟

不做代码审查又怎样(一)

从一次回顾会议开始

“要不……我们不做……代码审查了……试试?”还记得当有人抛出这个建议时周围同学的表情,那种表情用两个字加两个标点符号就可以形容:“什么?!”


对了,先介绍一下背景,这是项目一次普通的回顾会议,我们正在讨论的是如何让代码审查更有效率和效果。我们做代码审查的方式比较简单直接,就是每日站会后,大家围在一台开发机周围,逐一轮换讲解昨天所有提交的内容,就像下图中的那样。还有,这是一个已经超过了 7 年的比较大型的项目,代码审查是我们从项目开始就坚持的一个实践,所以当有人提议废除它的时候,这在很多同学心里是想都没想过的事情。


代码审查是一个很好的实践,可以帮助团队里的同学了解其他同学在做什么,可以分享项目的上下文,可以分享技术上的一些小魔法,可以发现很多潜在的代码缺陷,可以提高代码质量,还可以有很多很多好处……


但是,在真正的实施过程中,很多情况下并不像想象的那般美好,经常出现例如有些同学由于跟不上其他人讲解的速度(毕竟不是自己写的)或是没有相关的上下文(例如刚加入项目的新成员),或是由于提交没有被很好的切分和组织,导致整个过程都处于游离状态(就像下图中的我……毫无摆拍痕迹),而代码审查的效果也打了折扣,渐渐的变成了一个流程,一个过场, 一个习惯。



图 1. Code Review


于是团队里就有人站了出来,引导大家去发现背后的问题,也就引来了这样一场激烈的讨论。在讨论中,有些同学坚持在说代码审查还是很有用的,有这样那样的好处,需要保持下去;有些同学则非常实际地指出了执行上的各种困难和问题。讨论异常激烈,直到有人小心翼翼地提出了文章开头的那个建议,一片哗然后大家都陷入沉寂:是啊,不做代码审查了,我们会失去或是得到什么呢?


本文转载自健荐公众号。


原文链接:https://mp.weixin.qq.com/s/9l-549sddZ_JFMqdNC8CgQ


2020-01-17 11:23569

评论

发布
暂无评论
发现更多内容

AlDente Pro for Mac(电池最大充电限制软件)

Mac相关知识分享

App自动化测试的高级定位与PO设计模式

测试人

软件测试

DSP 的 CV 算子调用

地平线开发者

算法 自动驾驶; 算法工具链 地平线征程5

Lazada商品评论列表的开发应用与收益

科普小能手

API API 接口 lazada商品评价接口 lazada API接口 lazada

为什么《程序员修炼之道》评分高达 9.1?

京东科技开发者

移动端设备上稀奇古怪的前端问题收集(一)

京东科技开发者

MQ消息乱序问题解析与实战解决方案

京东科技开发者

一文全答:什么是低代码?可靠吗?贵不贵?适合谁用?

优秀

低代码 低代码平台 低代码平台应用场景

支持Teams Phone的microsoft Office 365版本

cts喜友科技

通讯 云通讯

异构算力开源社区HAMi举办首届沙龙,将发布新版本,效能全面提升

新消费日报

深度揭秘“快稳省”背后的数仓硬核技术

字节跳动数据平台

大数据 数据仓库 云原生

区块链智能合约的开发流程

北京木奇移动技术有限公司

区块链开发 智能合约开发 软件外包公司 新加坡

2024年软件行业的发展趋势:从人工智能到低代码平台的变革

天津汇柏科技有限公司

云计算 低代码 AI 人工智能

全球首家!京东发布“立影计划”裸眼3D商品营销方案

京东零售技术

BetterTouchTool for Mac(触摸板及鼠标增强软件)

Mac相关知识分享

1688跨境寻源通代采集运系统PHP搭建攻略,实现采购订单物流自动化

tbapi

1688跨境寻源通 1688寻源通 1688代采集运系统 1688寻源通代采系统

易未央-AI 風雲:34. AI與商業命理的崛起

因田木

AI 烏托邦

Taro 鸿蒙技术内幕系列(三) - 多语言场景下的通用事件系统设计

京东零售技术

taro 前端

Final Cut Pro X for Mac(fcpx视频剪辑)中文版

Mac相关知识分享

FastAPI 依赖管理的三种方式对比:依赖注入 vs LRU缓存 vs 全局变量

大法师

FastApi 依赖注入

食品加工、预制菜行业MES系统解决方案

万界星空科技

mes 万界星空科技mes 食品MES 食品加工 预制菜加工

快手前端动效大揭秘:告别低效,vision平台来袭!

快手技术

前端

软件开发进度频频拖延,项目进度问题如何解决

爱吃小舅的鱼

项目进度

9款在线编辑甘特图的网站,助你高效管理项目进度

爱吃小舅的鱼

甘特图

HarmonyOS 5.0应用开发——UIAbility跳转

高心星

arkui ArkTS 鸿蒙Next HarmonyOS NEXT

Sketch for mac(矢量图形设计工具)中文版

Mac相关知识分享

【GreatSQL优化器-05】条件过滤condition_fanout_filter

GreatSQL

Wirecast Pro for Mac(视频直播制作工具)v16.4.0中文免激活版

理理

质控经理如何掌握项目进度、项目成本

爱吃小舅的鱼

项目进度 项目成本

Navicat Premium 15 for Mac(数据库管理软件)中文版

Mac相关知识分享

中昊芯英创始人及CEO杨龚轶凡受邀出席2024企业家博鳌论坛

科技热闻

不做代码审查又怎样(一)_语言 & 开发_王健_InfoQ精选文章