有意思:Code Review是一场苦涩但有意思的修行( 三 )


在方法的 return、break、continue、这样断开性语句后必须是空行;
在不同语义块之间;
循环之前和之后一般有空行 。另外 , 方法和类定义下方就不需要空行了吧 。
十、命名太随意
代码有两件事情比较头疼:命名和循环 。
人如其名 , 如果不是它干的活 , 名字却是一副道貌岸然 , 太容易把人带偏了 , 一个中国人如果取名叫赵C , 一个女孩子如果取名叫石敢当 , 第一印象生生地给扭曲了 。
英语不好的同学 , 要么用错英文单词 , 要么翻词典 , 整出一个专八的词汇 , 任何人都不认得这个单词 , 在 CR 时 , 还需要打开在线翻译时的命名 , 绝对不是好命名 。当然如果在线翻译都翻不出来的时候 , 那更头疼 。如果表意错误 , 那更要命 。
十一、注释是电影的旁白
电影的旁白:1)信息量大 。2)适时出现 。就像 star war 里 , 开始的一段一样 , 如果不交代那些背景 , 可能进入正片是一脸懵逼的 。在代码上不需要写正确的废话 , 名字取得好 , 自然是自解释的 。在嵌套循环中 , 或者在复杂条件分支中 , 往往是需要讲明白的 。
另外 , 添加业务背景信息 , 以及执行频率 , 执行条件 , 甚至维护者注意点 , 都是注释的重要理由 。识别到哪里要写注释 , 也是一个对业务的阅读能力 , 而不是代码阅读能力 。
十二、满天飞的函数式编程好吗?
答案是:不好 。如果一个 stream 后边的调用超过 5 个 , 我觉得你是为了炫耀 , 因为别人不敢改这段代码 , 体现出来你的不可替代性 。这种 10 行都是函数式编程的方式 , 就像让人在水里憋气超过 10 分钟不能换气一样难受 , 有点缺氧的感觉 。如下图 , 反对这种直接 return 一个长链路的处理结果:
有意思:Code Review是一场苦涩但有意思的修行
文章图片

文章图片

作者丨孤尽 , 《阿里巴巴Java开发手册》和《码出高效》作者 。


推荐阅读