AICon 上海站|日程100%上线,解锁Al未来! 了解详情
写点什么

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

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

    阅读完需:约 3 分钟

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

回到问题上来

如果沟通金字塔的理论说的通,那代码评审就不再是一个:“必须要做的敏捷实践”,而只是沟通金字塔上的一层而已。那它的存在必然是为了弥补上下层沟通之间的空隙,那这个空隙到底是什么呢?是什么样的沟通是结对编程所不能覆盖,而用类似于迭代计划会这种更高层的沟通机制覆盖又不太经济的呢?为了让团队重新找回这个答案,我们最终决定试一试:


停止代码审查一个月,在这一个月的时间我们去体会没有代码审查的得与失,在一个月之后重新举行回顾会议再来讨论是否要继续做代码审查。


在一个月后如期进行的回顾会议上,团队又重新讨论了这个议题,最终觉得通过这一个月的尝试,在还无法做到更频繁地 Switch Pair 的情况下,代码审查还是很有必要的。例如在这个月中,大家对于其他人在做的工作了解变少,集成出现了很多冲突;缺陷的数量也有所增加,其中有些是很明显的错误,很容易通过代码审查的方式发现并在前期消除;代码质量也有明显下降,出现了测试的缺失和很多代码坏味道。


而另一方面为了让代码审查能够真正的发挥其作用和价值,经过讨论我们也优化了代码审查的方式,让大家更有参与感,更有效率,也更有乐趣(见下图抓拍)。



图 5. 改进后的 Code Review

交付价值 Over 遵循实践

日本剑道有个心诀,叫守 破 离:


1.“守”:最初阶段须遵从老师教诲,认真练习基础,达到熟练的境界。


2.“破”:基础熟练后,试着突破原有规范让自己得到更高层次的进化。


3.“离”:在更高层次得到新的认识并总结,自创新招数另辟出新境界。


守固然重要,但如果不能在守得基础上寻求突破,领会其中的奥秘和背后的道理,则始终无法达到离的新境界。在中国的武术中也有“无招胜有招”的说法,这里的无招就是指在将招数融会贯通之后,能够运用招式背后的原理,打破招数的限制,随机应变,自由应对。


而反观我们自己,是不是已经慢慢的不知不觉的被困在“守”的围城之内,变成了猴子定律中最后的那群猴子,只知道去拿香蕉会被打,也会跟着其他猴子去打那些试图拿香蕉的新猴子,但是为什么要这么做?我们已经忘了,或从来都没有知道过。


所以,不要以为遵循了敏捷提倡的一些实践我们就是敏捷的,不要以为遵循了精益的实践我们就是精益的。在我们没有理解并追求其背后真正价值的时候,只不过是平添了另外一份成本而已,不如不做。


本文转载自健荐公众号。


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


2020-01-17 11:24707

评论

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

两年Java开发经验赶上金九招聘季涨到23K,这究竟是怎么做到的?

Java架构师迁哥

架构师训练营-第1周课后作业(1期)

阿甘

面试常考算法题之 Top K 问题

小齐本齐

数据结构 算法

彻底理解JavaScript执行上下文

Walker

Java 大前端 this指针 函数执行

在Ubuntu 20.04 搭建 Django 开发环境 以及 快速构建一个简单的 Blog

Matrix Chan

Python django 后端 Ubuntu20.04

繁星计划将成为引领全球币值管理的带动计划!

InfoQ_967a83c6d0d7

USDT跑分承兑系统开发,区块链支付平台搭建

LeetCode题解:206. 反转链表,双指针,JavaScript,详细注释

Lee Chen

大前端 LeetCode

哈哈,成为作者了

大海

架构师训练营第 0 期 期末大作业

无名氏

oeasy 教您玩转 linux 010215 随机谚语 fortune

o

滴滴基于 Flink 的实时数仓建设实践

Apache Flink

flink

服务质量分析:腾讯会议&腾讯云Elasticsearch玩出了怎样的新操作?

腾讯云大数据

大数据

anyRTC RTSP转WebRTC方案

anyRTC开发者

音视频 WebRTC 直播 RTC 安卓

@所有人 Flink Forward Asia 2020 向您发出议题征集邀请!

Apache Flink

flink

用Go-Guardian写一个Golang的可扩展的身份认证

朱亚光

微服务 身份认证 Go 语言

Week 13 命题作业

Jeremy

我写了一个TypeScript虚拟机。

渔子长

Java typescript 大前端 deno Node

读书笔记之《普罗普:故事形态学》

AI代笔

百度大脑6.0重磅升级 不断进阶中的中国AI底座实力尽显

脑极体

Java面试史上最全的JAVA专业术语面试100问 (前1-50)

Java架构师迁哥

架构师训练营 - 大作业

张明森

Netty之旅三:Netty服务端启动源码分析,一梭子带走!

一枝花算不算浪漫

Netty

金融企业敏捷转型大咖风采 | 中国出口信用保险公司的 DevOps 落地之道

Atlassian

项目管理 DevOps 敏捷 行业资讯 Atlassian

Clickhouse在大数据分析平台-留存分析上的应用

腾讯云大数据

大数据

Apache Pulsar 在腾讯 Angel PowerFL 联邦学习平台上的实践

Apache Pulsar

Apache 学习 开源 Apache Pulsar

应对高并发系统有没有通用的解决方案呢?

架构师修行之路

架构 高并发 异步

甲方日常 15

句子

工作 随笔杂谈 日常

介绍

剑心

学习

Week 13 学习总结

Jeremy

架构师训练营-第1周学习总结(1期)

阿甘

UML

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