外企的code review让我感觉这几年的代码白写了…………

Cryptic S6-avatar

Cryptic S6

2022-07-17T09:20:23+00:00

背景:cs毕业7年,在国内主要负责一个中厂的中间件部分。卷不动了,就出来找找机会,最近入职了一家欧洲的公司。

第一个月被code review搞的很挫败。原公司写java
,现公司也是写java。code review被老大提了很多点,包括但不限于:
1.方法命名一定要见名知意。比如testThrowExceptionForGenrratingXXXWithUserNameAndPassword。这只是一个非常短的了,还有更长的。

2.非常依赖lombok和java 8的stream,可读性很强。我说这个不好调试啊。我们老大回复说,调试属于暴力法。你的代码不能运行/运行错误的时候才需要调试。

3.不可变的变量要声明为final(包括临时变量)
4.optional不可以作为方法参数。

和原公司的一些区别(非代码部分)
1.没有统一的测试环境,每人一个namesapce,用kubernetes+aws sandbox管理每个人的测试环境
2.对代码测试覆盖率有严格的要求
3.基本上每周都要升级依赖库(安全检查)

我这才写了不到一百行代码………给我找出来很多问题。。。。。
Brady-avatar

Brady

这个我觉得挺正常的,没有特别过分
rythuliaan-avatar

rythuliaan

习惯就好,test比代码长的多是正常情况[s:ac:哭笑]
BroBruh-avatar

BroBruh

这样大家都舒服
Cha-avatar

Cha

名字很重要的啊
不然叫个“it’s ugly but useful”谁受得了
justBrandon-avatar

justBrandon

很规范啊,我觉得很好

不过stream真的可读性很强吗,为啥我更习惯for循环[s:ac:瞎]
reviraptor-avatar

reviraptor

额,这不是挺正常的
Potamatoe-avatar

Potamatoe

是不是让那些不写注释,离了他就没法改的代码流弱化了?
CryptoNight07-avatar

CryptoNight07

有啥问题?没有规范的代码你自己想去维护吗[s:ac:偷笑]
林花孫-avatar

林花孫

代码规范很重要
Narmix-avatar

Narmix

一很有问题吧?

不过只要钱给够,他说什么都是对的。
YRUREADINGDIS-avatar

YRUREADINGDIS

有啥问题吗,出个规范(可能很脑瘫的规范)也比各写各的好呀

到时候你同事走了,留下一堆屎山,你就知道,规范的好处了
Vertex-avatar

Vertex

是的,外企的编码规范很严格,而且他们非常重视code review,经常看出你代码的逻辑问题[s:ac:瞎][s:ac:瞎]
ITZ3L1T3-avatar

ITZ3L1T3

推荐你去看看一本书 clean code
SRP原则懂了的话 大部分问题都可以解决
𝔽𝕦𝕟𝕜𝕪𝟡𝕣𝕠𝕠𝕧𝕖-avatar

𝔽𝕦𝕟𝕜𝕪𝟡𝕣𝕠𝕠𝕧𝕖

stream写起来还蛮爽的。。。。
Dxniel-avatar

Dxniel

我用stream流被叼过好几次了[s:ac:哭笑]
暗いDarkish-avatar

暗いDarkish

这不是非常规范的代码写法嘛[s:a2:不明觉厉]
Gabrierue-avatar

Gabrierue

stream可读性强???就这一句,能吵一天啊
IDK_TTV_QC-avatar

IDK_TTV_QC

如果不是互联网产品,代码是生产过程中报价最低的环节,大概只有测试的1/2到2/3。
skrt★-avatar

skrt★

没啥问题,只是方法名我不喜欢太长,写好备注就差不多了…