今天最窝心的文字:码农最讨厌两件事儿

2018-08-17 15:04:33 +08:00
 quu

码农最讨厌两件事儿:

1.码代码的时候写注释 2.接手别人代码没注释

真的扎心了,我先笑十分钟。

8732 次点击
所在节点    程序员
54 条回复
shihty5
2018-08-17 16:15:05 +08:00
这就是传说中的双标狗,宽己严人。人的本性就是如此呀。
tulongtou
2018-08-17 16:23:12 +08:00
这明明是 10 件事
Decouple
2018-08-17 16:23:50 +08:00
@night98
1. retrieveData()
2. retrieveDataByCondition(condition)
3. retrieveDataByConditionFromCache(condition)

另外我想表达的不是完全不需要注释,而是绝大多数注释可以避免
passerbytiny
2018-08-17 16:30:19 +08:00
@Decouple 代码即注释有个前提,所有使用代码的人对代码的理解方式相同。这要求开发期必须有通畅的沟通,维护期必须有良好的交接。此时敏捷开发、领域模型通用语言就成了必要条件,一般团队是达不到这俩必要条件的。
night98
2018-08-17 16:32:26 +08:00
@Decouple #23
绝大多数注释可避免的前提是:

1.团队成员水平基本一致
2.对当前业务较为熟悉

现在有几个团队能有这个条件?

我并没有否认好的代码可以自解释,只是注释可以最快的让其他开发理解该方法或类所实际执行的事情,另外顺嘴说一句,有些开发写的注释还不如不写,写五个字的注释,基本等于没写。
newtype0092
2018-08-17 16:36:28 +08:00
@Decouple 你回想下上学时老师推导数学题的时候,是不是简单的题也有思路跟不上脑袋没转过弯的时候,难题也有一下冒出灵感得出比标准答案还优的解的时候,人的思路本来就不是机械化的东西,在关键的地方引导一下怎么就成了对失败的妥协了?
代码的自注释只限于“做了什么”,你说的吧逻辑拆分的更小更易读也只是让别人更清楚你“做了什么”。
而阅读代码是基于“做了什么”而推导出“要达成什么目标”,代码再完美再简单易懂也无法省略这个推导过程。
好的注释就是给这个推导加一些提示,让推导过程更顺利,这显然是合理而必要的。
0x8192dd
2018-08-17 16:39:35 +08:00
并没有,我写代码必写注释,而且很享受写注释的时候总结思路的过程,写注释又不是写口水话,类似 readme 的注释该写还是要写的,不然隔几个月自己都不记得自己当时为什么这么写
Decouple
2018-08-17 16:43:38 +08:00
@passerbytiny
@night98
说的很有道理,敏捷开发惯了,有点想当然,但我依然觉得即使在这样的前提下也有很多注释可以避免,Martin Fowler 谈过这个问题: https://www.kancloud.cn/sstd521/refactor/194232
4u1kto
2018-08-17 16:45:00 +08:00
最窝心的难道不是给人写了注释,他们也看不懂代码吗。
zhangchioulin
2018-08-17 16:46:07 +08:00
我也觉得写注释挺舒服的。
Decouple
2018-08-17 17:05:59 +08:00
@newtype0092 这一类注释确实是有必要的,可能说的有点偏激
kimown
2018-08-17 17:13:02 +08:00
注释只是锦上添花,我更希望项目代码有一个约定思路,复杂需求能用更合理的方式解决,而不是堆代码,堆变量
wormcy
2018-08-17 17:15:46 +08:00
我最讨厌 2 种人
1. 种族歧视的人
2. 黑人
4u1kto
2018-08-17 17:18:55 +08:00
![看这个注释]( )
toxicant
2018-08-17 17:30:07 +08:00
1:为了让自己下周看代码时还知道上周五都干了啥...
2:可以考虑换一个工作环境了
tohearts
2018-08-17 17:37:43 +08:00
写注释可以让自己逻辑清楚,干嘛不写。
PulpFunction
2018-08-17 17:50:11 +08:00
@4u1kto 真的? 代码行数估计能除 3
tkmiles
2018-08-17 18:00:12 +08:00
我倒是很喜欢写注释,主要怕忘记逻辑
tingyunsay
2018-08-17 18:26:22 +08:00
最起码函数头写个说明,函数变更什么的,现在看别人的代码看得脑袋大,尤其是交接过好几回的,用思维导图才慢慢理明白....
boboliu
2018-08-17 18:29:10 +08:00
@jamfer 你这个不够自相矛盾,应该是
1. GF 婚前不给啪
2. GF 不是处

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

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

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

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

© 2021 V2EX