Re: [讨论] 要不要写注解

楼主: littlethe (东周流浪汉)   2019-10-26 14:12:46
※ 引述《sec5566 (sec)》之铭言:
: 听过说法是
: 1.写注解是浪费时间,命名命的好不需要写
讲到这个我就想浮出来,
写程式写了也快20年了吧?
我真的不知道什么叫做命名命的好不需要写注解,
会觉得自己命名很棒而不需要写注解,
是很自大的想法,
更多是用来偷懒当不想写注解的理由,
实在搞不懂为什么有人连花个5分钟写注解都不愿意,
结果他放假,别人看不懂他的code,只能call他时,就要搞一小时,
程式100行以上就该写,至少写一下这个程式在干什么的,
如果是两个人以上一起写,也要写一下那一部份是谁写的
还有另一种状况,
就是注解就变成用来内斗的工具,
故意批对方注解写得少,写得看不懂要重写,
然后硬凹说对方程式没写完,
结果自己注解写得更少或更烂,
或是整个组识走向极端搞得每行都写
注解没有说一定要写多少,
以自己,和同事能看得懂为准,
所以难理解的地方就要多写,
同事功力不强的话,就要多写,
(不是说越强的人越不用写,因为要"互相配合",
而弱者要花更多时间了解你的code,
花一大堆时间教弱者,不如干脆多写注解来让每个弱者来都能自己搞懂)
这种事和吃饭一样,饭一定要吃,不吃会饿死,
要吃是以能吃到不饿为原则,
每个人饿的标准也不同,食量也不同,
但不用搞到吃到很撑,吃太撑也会死掉,
偏偏很多人就很极端
: 2.写注解方便维护,而且读中文一定比读英文快
: 自己是常常忽略注解,
: 不过有空还是会补上,
: 因为程式都只有我在弄,
: 但是当大型系统过一阵子在拿出来改时,
: 就知道不写注解真的是省小时间花大时间,
: 像是一堆函式传几个变量能跑出什么,
: 还是同样提资料,这2个提出来差在哪?
: 不写后面维护的人,就要很辛苦去看里面,
: 尤其是交接工作,
: 大家会写注解吗?
:
作者: HateDebris (Monster)   2019-10-26 15:12:00
同意
作者: cokellen (cokellen)   2019-10-26 16:12:00
+1
作者: b85040312 (万年newman)   2019-10-26 16:46:00
签名档 根本就是再次打脸XD
作者: lilicoco520 (哩哩)   2019-10-26 17:58:00
同意
作者: jass970991 (半糖绿假面超人)   2019-10-26 18:24:00
同意 不过会到落落长的code 在Code review时应该会被改正吧
作者: eva19452002 (^^)   2019-10-26 18:46:00
程式会到100行以上不是应该拆成数个function,然后function命得好,也大概知道程式在干嘛
作者: v7q4 ((.)(.)乳剑双修 -|=>)   2019-10-26 19:34:00
推内斗工具!其实也算自保工具,写下几月几日、谁说要这样改、为什么改等,或者是主管说改成这样workaround后人一看就知道这个蠢设计是怎么来的
作者: hankyan919 (比奇堡乐队)   2019-10-26 23:24:00
命名好不用注解这种说法真的超级自以为
作者: onlyeric23 (MiGG)   2019-10-26 23:38:00
写了落落长的烂扣再拼命加注解,还是先去把扣写好吧
作者: viper9709 (阿达)   2019-10-27 00:18:00
推这篇~有同感
作者: popcool (我不懂)   2019-10-27 00:23:00
有的时候不是长不长的问题,而是multi-thread逻辑本来就比较抽象,命名是无法弥补这种不足的
作者: Ghamu (猫丸)   2019-10-27 03:25:00
理论上100行就该拆了 但不行的话还是”只好”写注解 激进一点希望不写注解也就是怕code烂到爆 注解一米篮 注解多通常也就带表程式码品质第低 但确实也有写烂code自以为品质高都没写注解大家看不懂的XD
楼主: littlethe (东周流浪汉)   2019-10-27 09:04:00
我说的100行是指总行数,把所有拆开的都要算...
作者: flysonics (飞音)   2019-10-29 13:07:00
coding完全不写注解的 我祝他生儿子没屁眼
作者: akito117 (宗益)   2019-10-29 18:35:00
注解真的很重要
作者: hakman (^____^)   2019-11-04 01:47:00
有的时候,弱者之所以是弱者,就是你注解写再多,他都可以问 为什么 or 说 看不懂....= =

Links booklink

Contact Us: admin [ a t ] ucptt.com