团队开发代码不爱写注释,如何解决这一困境?

2020-10-22 23:19:40 +08:00
 labulaka521
刚入职不久,维护的心累,在别人的没有注释代码上加功能是真的难受

怎么让大家对于比较复杂的逻辑习惯写上注释
10282 次点击
所在节点    程序员
127 条回复
amwyyyy
2020-10-23 14:26:16 +08:00
实际上很多人的代码像屎一样,加注释也只是屎旁边多几只苍蝇,用处不大。
得从代码规范开始,功能设计开始把关
libook
2020-10-23 14:30:40 +08:00
这个得团队达成一致,并有技术经理通过 Code Review 等手段巩固执行,你可以向团队或者技术经理反馈这个问题。

我们每天会抽出一个小时左右团队成员所有开发人员进行快速 Review,有的代码可读性低技术经理会提出来,要么改写法,要么加注释,做得多了团队成员会逐渐养成注意代码可读性的习惯。
labulaka521
2020-10-23 14:43:34 +08:00
@qiumaoyuan 反正我看过的作者为外国人的库基本注释很全 反观国内 没注释的占大多数 国内开发者确实牛逼 plus
qiumaoyuan
2020-10-23 15:01:34 +08:00
@labulaka521 其实这帖子里不少朋友应该都一样,看到注释,甚至看到论坛里讨论“注释”的帖子,第一个反应是自己先改善代码,如果觉得代码还看不懂,就继续改善,改到能一眼看得明白为止,这样自然就变成了大家嘴里说的不需要注释的代码。
不过这确实需要下一番苦功,铁了心这辈子(起码在整个职业生涯里)跟劣质代码死磕,不是短时间能成的。只是不要放弃就好。
所以我的第一个回复就是“重构代码”,这是正视劣质代码存在的事实并试图改进,完全是积极处理问题的态度,而不是为不写注释的劣质代码找理由,这是两码事,不要混为一谈。注释在我看来只是一个信号,一个标示着劣质代码存在的信号而已。
gaorenhua
2020-10-23 15:02:05 +08:00
其实大部分原因我觉得应该是国内外开发者的出发点不同,就好比国外的开源事业为什么比国内牛逼,中国人写一行 hello world 都想着赚钱。你还能指望写注释么?巴不得你都看不明白。久而久之,都这样了。工匠精神缺失。
springz
2020-10-23 15:18:38 +08:00
我赞成业务代码不写注释或者少写注释,你看的项目有问题,有可能区分对待国外开发者看基础库,国内开发者看业务库。
springz
2020-10-23 15:19:16 +08:00
业务代码大多数情况下你写了还不如不写,快速迭代下每一个注释都是雷。
springz
2020-10-23 15:20:38 +08:00
可以用 CI/CD 加检查来禁止 magic number 之类的常见的造成代码不可读的写代码的方式。
arnoldxiao
2020-10-23 15:55:46 +08:00
代码比注释更重要
ren2881971
2020-10-23 15:58:31 +08:00
说实话团队合作时候 不更新的注释还不如不写。。。 各种误导人。 坑爹。
suyuyu
2020-10-23 16:25:57 +08:00
我的注释是用来发牢骚的
PhpBestRubbish
2020-10-23 17:10:01 +08:00
网上:别人写的代码都是一坨翔
现实:这里已经有几个 if/else 我再加几个 if/else 没什么问题
leafre
2020-10-23 17:16:57 +08:00
哪有时间写注释
leafre
2020-10-23 17:18:45 +08:00
应该让代码具有可读性,而不是读注释
crasa
2020-10-23 17:58:16 +08:00
@amwyyyy 就冲着你这条回复,我把帖子收藏了🚬
namelosw
2020-10-23 21:40:44 +08:00
我司标准不写注释

其实所有人坚持都不写注释就会发现其实比写注释强
fansangg
2020-10-23 23:14:35 +08:00
注释有什么好写的?
你公司业务逻辑很复杂?
我这边做移动端和前端,从业那么久一般都只有类名写几个注释表示这个类是干啥的,然后网络请求会写写是哪个接口,自己造的轮子可能一些变量会加个注释
iwh718
2020-10-24 00:59:04 +08:00
后端小白疑惑 ifelse 多了有啥问题吗
xupefei
2020-10-24 01:22:07 +08:00
我司的代码很少有注释,大家都用命名了解逻辑。你说垃圾同事写垃圾代码?我司没有垃圾程序员😂
b00tyhunt3r
2020-10-24 02:05:45 +08:00
@leafre
@xupefei
@qiumaoyuan
我觉得你们眼中只存在一种情况:垃圾程序员写的垃圾代码造成垃圾注释,
但是完全没想到另一种情形:大神程序员写的大神代码,没有注释,你恐怕看不懂。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/717640

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX