这几天接手离职同事的交接代码,几个项目都是除了打 log 外无任何非代码内容,0 注释
哥们儿是我们的主程,从老板到周边相关同事都口碑甚佳,模范员工。之前我看过他的接口代码就发现没注释,这次算彻底了解
他交接快一个月,所有接代码的人都比较困难,总是需要他讲。反过来对外人的印象是,更觉得他离职可惜,更觉得他很重要,我们老板也觉得我们离不开他
从客观上,不写代码确实是提升了他自己的价值
不是讨论该不该,是讨论是不是
1
AcoStory 2020-03-11 11:30:50 +08:00
跳槽涨薪
|
2
ybw 2020-03-11 11:33:43 +08:00 via Android 1
既然他要离职了,还有什么必要"保护"。
就是坏习惯而已。 |
3
garlics 2020-03-11 11:34:48 +08:00
只有复杂的地方会注释,只为自己看得懂
|
4
brucep 2020-03-11 11:37:04 +08:00 via Android
你们为啥会觉得他有价值,而不是觉得他编程习惯不好。。。
|
5
xiaowei0823 2020-03-11 11:41:12 +08:00 4
没有注释我连自己的代码都看不懂,从这个角度看写注释的确是对自己的保护
|
7
Allenqjy 2020-03-11 11:43:52 +08:00 1
价值分为长期价值和短期价值,真正的价值和看上去的价值。他离职的时候老板觉得可惜也不会涨薪留他,他跳槽去一家更好的公司,也会被要求写注释,相同的水平,不写注释对个人价值来说,是很明确的减分项。
|
8
Citrullus 2020-03-11 11:50:08 +08:00
私以为多写注释利人利己,如果他有写注释也不用浪费那么多时间给其他交接的同事讲解
|
9
hhyvs111 2020-03-11 11:50:25 +08:00
你这样说,写 bug 是不是也是对自己的一种保护?故意留点 bug,当然不能那么容易被发现。然后自己迅速解决问题,让人觉得自己很牛逼的样子。
|
10
orzorzorzorz 2020-03-11 11:51:07 +08:00
我一直觉得写注释才是对自己的保护。比如老板一句话,“你能不能加上注释再走?”这种,硬刚可能两败俱伤,你稍微一回转,两边都好过的情景。
|
11
otakustay 2020-03-11 12:01:40 +08:00
脑子正常点的公司都知道止损是一种收益
|
12
Jooooooooo 2020-03-11 12:01:55 +08:00
没有认真对待自己主业的人其它的事情怎么能做好?
|
13
nicevar 2020-03-11 12:05:06 +08:00
不加注释时间长了读到自己的代码都会来一句,这 TM 谁写的啊。
|
14
banricho 2020-03-11 12:10:49 +08:00
没埋雷,写只有自己能维护的代码就不错了……
|
15
cmdOptionKana 2020-03-11 12:11:54 +08:00
可能是吧,但是不酷。
这要看人的三观了,“人嘛,要吃饭的,所以用一些不太光明正大的手段也无可厚非”,就看你自己是否认同这种观念了。 另外,就具体情况来看,你这个同事利用不写注释这一招,事实上也并没有产生多大的经济收益啊! |
16
tabris17 2020-03-11 12:12:58 +08:00
为啥要写注释?公司有规定吗?写注释加工资还是发奖金啊?
既然没有好处,为啥要写注释? |
17
gimp 2020-03-11 12:22:23 +08:00
进来竟然没有看到期望的那个教人写无法维护代码文档的链接🔗
|
18
superrichman 2020-03-11 12:24:28 +08:00 via iPhone
我写代码会先写注释当代码的大纲,之后具体写代码的时候遇到难点也会写注释。看到别人的代码没注释会很头痛
|
19
gimp 2020-03-11 12:24:41 +08:00 6
|
21
hbolive 2020-03-11 12:26:14 +08:00
公司 CTO 不行或者没 CTO。。
|
22
RubyJack 2020-03-11 12:33:26 +08:00 3
自己写代码, 我都抽象真是优雅,实现真是精致, 要什么注释,我这艺术般的代码就是最好的注释
看别人代码, 这都什么 jb,还不写注释,sb |
23
Perry 2020-03-11 12:34:55 +08:00
Code Review 去哪了?
|
24
Building 2020-03-11 12:41:13 +08:00 via iPhone
有些注释写的...还不如没有。
|
25
Vegetable 2020-03-11 12:47:02 +08:00
|
26
kbyyd24 2020-03-11 12:51:38 +08:00 via Android
我们公司的人都不写注释,因为没人看,大家都是直接看代码,因为代码即文档。只有很难用代码表达意图的时候,才会有注释
|
27
whileFalse 2020-03-11 12:52:12 +08:00
0 注释不好。
我的代码注释很少,在复杂的部分有一些注释。 那些么有注释的地方,代码本身就是注释了。 |
28
chroming 2020-03-11 12:55:21 +08:00 1
我觉得不是,不说一段时间之后自己都看不懂的问题,不管是被开除还是自己主动辞职,也只有别人真正开始接手的时候才知道代码不容易看懂,这已经是确定要走的状态了,领导加钱留的可能性不高。
另外别人看不懂要经常问,如果是架构设计的很优秀因为接手人水平不足难以看懂会觉得他厉害,但是如果是不写注释或者逻辑故意写的复杂,接手的人只会在心里骂他傻 X |
29
NeinChn 2020-03-11 12:56:06 +08:00
业务代码不写注释也挺正常的吧,但是我会习惯把对应的业务开发需求文档贴到对应的业务代码上面,只要知道解决的问题是什么,大不了就是重写。
知道要做什么就很好办,要是连当初做的事情也不知道,只能从代码反推,那就凉凉了。 |
30
Wicked 2020-03-11 12:58:36 +08:00 via iPhone
1. 该写注释的地方而故意不写,那是挖坑埋自己
2. 再说了,作为主程,别人看不懂写出 bug,还不是算到自己头上… 3. 通常,作为主程,都是恨不得底下的人个个独当一面,自己躺着派派工单就把钱拿了,哪会坑自己人的 |
31
chroming 2020-03-11 13:00:18 +08:00
楼主的问题关键是“不写注释就不容易理解的代码却不写注释”等这类主观上不想让别人理解代码的行为是不是对自己的保护,而不是“不写注释是不是有问题”,可能楼主同事没有这种主观想法,不过不影响楼主的问题
|
32
icyalala 2020-03-11 13:04:18 +08:00
楼主认为 "不写注释" 让外人印象离不开他,从而提升自己的价值,
那么请问,只用我自己懂的语言和框架算不算呢? 排挤掉能干的员工只保留我自己算不算呢? 造一些不稳定的坑然后自己来填算不算呢? "让外人印象离不开",这肯定不是所谓"价值"。。 |
33
mazyi 2020-03-11 13:09:31 +08:00
代码是自解释的,只应该写为什么,而不是写干什么。所以如果要达到楼主认为的注释,写一写干什么就行了。
|
34
asukanoir 2020-03-11 13:13:48 +08:00
对于我自己来说,如果我不写注释的代码几个月之后还能看懂的话,那说明这代码不写大家也都能懂。如果我几个月之后看不懂了的话,一定会拍一下大腿骂道:TM 的当时为什么不写注释。所以我在比较难懂的地方都会多少写上几句注释,我还想好好干。。。
|
35
dd0754 2020-03-11 13:39:34 +08:00 via iPhone
我就从来不写注释。。。
|
36
mouyase 2020-03-11 13:40:43 +08:00 via Android
不写修饰就是代码质量不好,不需要其它解释
|
37
loading 2020-03-11 13:40:55 +08:00 via Android
那就重构他的代码,他不走,没注释的代码会越来越多。
|
38
yhxx 2020-03-11 13:44:21 +08:00 2
有个前端同事经历过一样的问题
他和一个后端一起负责同一个重要项目,前端部分文档注释使用手册之类的写的特别完善,后端什么都没有,遇到问题所有人都只能找这个后端解决,年底了后端作为优秀员工上台接受表彰,大家都觉得后端是这方面的专家,不可或缺,反倒前端随时可以被替代 |
40
sudoz 2020-03-11 13:47:10 +08:00
代码可读性是衡量工程师水平的一项能力
|
41
hstdt 2020-03-11 13:50:06 +08:00 via iPhone
写牛 B 的别人写不来的代码才是
|
42
th00000 2020-03-11 13:59:19 +08:00
关键地方不写注释, 过半年自己读也够呛看得懂的。
|
43
augustheart 2020-03-11 14:01:47 +08:00
如果没有代码以外的依靠傍身,你怎么写代码都保护不了自己。如果你只有代码榜身,那么老老实实把自己代码写优秀了才是保护啊。
江湖传言中 nga 的代码别人都看不懂,你以为 nga 的代码真的别人都看不懂? |
44
heyjei 2020-03-11 14:03:59 +08:00
有些人不写注释,只是单纯的懒,坏习惯。
|
45
justfindu 2020-03-11 14:05:32 +08:00
读到了 1 年半前自己的项目代码, 心里骂了句我操他妈, 什么傻逼玩意儿 =.=! 我关键位置还写了注释
|
46
encro 2020-03-11 14:10:43 +08:00 1
* 用代码解释你在做什么( what ),用注释解释为什么做( why )?
大部分人不知道上面这点,写了很多无用的注释。 * 写代码前先在大脑梳理大纲,再在 IDE 用注释阐述需求和用伪代码梳理具体步骤,最后再填写代码。 大部分人不知道这点,以为写注释在浪费时间,写了很多错误百出的代码,不知道后来用在 DEBUG 时间远远超过大脑梳理和写注释。 |
47
Felldeadbird 2020-03-11 14:17:56 +08:00
好代码胜过写注释。
好奇问一下,当前工作是楼主第一份工作吗? |
48
bigShrimp8577 2020-03-11 14:23:11 +08:00
@RubyJack 仔细研究一番后发现——自己写的
|
49
bomb77 2020-03-11 14:27:42 +08:00
|
50
coderdusk 2020-03-11 14:28:30 +08:00 3
|
51
zooeymango 2020-03-11 14:29:58 +08:00
代码质量好的话不用注释也能看懂,写的复杂还不写注释是不好的编码习惯,离职的时候说公司离不开,万一老板让你交接到离得开的程度,要拖多久?
|
52
passerbytiny 2020-03-11 14:32:44 +08:00
主程、交接快一个月、所有接代码的人都比较困难、离职没强制挽留:这些结合在一起看,他干的事是高要求的、独立完成的、重要但不是最核心的。这中代码,非但技术要求高,个人标签也中,就算注释全,交接也是很困难的。
至于老板也觉得我们离不开他,任何一个有能力的员工离职,老板都会这么觉得的,跟交接难度没关系,那种没能力还交接困难的员工离职,老板只会觉得要赶紧送走这个瘟神。 |
53
blurh11E27 2020-03-11 15:12:45 +08:00
哈哈哈哈哈哈哈 对于欠薪得 这是好方法
|
54
pperlee 2020-03-11 15:16:15 +08:00
惯的。
|
55
killeder 2020-03-11 15:19:43 +08:00
代码写多了,就是写了注释,也注定有很多连自己都不知道的暗坑的
|
56
kirch 2020-03-11 15:26:19 +08:00
企业要求 996,员工玩点小动作,个人觉得没有什么问题。要么大家都非零和,要么大家都零和。
|
57
ipwx 2020-03-11 15:28:42 +08:00 1
。。。房地产商建完房子拒不给设计图纸,可以可以。贵站风气可见一斑。
|
58
peinhu 2020-03-11 15:42:02 +08:00
不写注释不算保护,别人只要花时间,肯定能看懂,写有误导性的注释才是保护。
“有时候,错误的文档比没有文档更可怕。”--鲁迅 |
59
inrenping 2020-03-11 15:42:34 +08:00
程序員花在讀代碼的時間大概在六成以上,不寫注釋會讓他在讀代碼上花費更多時間,除非他從來不用維護自己寫的代碼。
|
60
zhjie 2020-03-11 16:19:41 +08:00
不算保护吧,充其量是恶心接手的人。
|
61
qingmei2 2020-03-11 16:39:57 +08:00
不写注释和保护自己有什么关系?
提离职 -> 代码交接 -> 别人看不懂你的代码 -> boss 觉得你不可或缺 -> 可是你已经走了呀。 已离职 -> 求职 -> 难以理解不可读的代码 -> 不好的编程习惯 -> 面试被 pass 这种所谓 “对自己的保护” 究竟体现在哪了呢?我确实无法理解。 PS: 当然你说其实个人能力很强,编程习惯也很好,自己个人项目也写注释,但公司的代码我就不写注释,那我确实没办法。 |
62
HENQIGUAI 2020-03-11 16:43:28 +08:00
#19 这个笑死了,必备编码规范呐
|
63
nanoha 2020-03-11 16:58:52 +08:00
别人写的代码 我感觉看注释和直接看代码理解速度都一样慢
|
64
mushishi 2020-03-11 16:59:45 +08:00
基本上写流程注释和重要方法的注释,其他的基本都不写了。
|
65
iasuna 2020-03-11 17:07:38 +08:00
没人会因为这种莫名其妙的小聪明觉得另一个人很重要
因为大家都不傻 你觉得你都看透了 所有其他人也一样看透了 |
66
RJH 2020-03-11 17:22:45 +08:00
这东西就跟有些人会提倡写不可维护的代码一样。
|
67
fancy111 2020-03-11 17:31:02 +08:00
没什么保护不保护的,你看不懂别人的代表技术不到位。
另外我是比较懒的,能不写的就不写,如果是要给别人接手,我还是会给他一份手册的,但是不会写到每一行注释。 其实这根本不算什么,当年给别人改东西发来的都是直接一套系统,什么都没说明,都要重写。 |
68
thebayarea 2020-03-11 17:45:42 +08:00
通过不写代码注释等手段使自己经手的代码, 项目除了自己以外的人难以接手, 维护来提高自己的"难以(不可)替代性", 这是小聪明啦, 解决此问题的方法很简单, 老板找一个信得过的人当技术总监, 由技术总监来 code review
|
69
SkyCity4NJ 2020-03-11 17:47:17 +08:00
习惯很重要,何况是个好习惯呢:)
|
70
zy445566 2020-03-11 17:47:31 +08:00 1
代码写得好,bug 少,看起来就像一个闲人
注释多,代码清晰,任何人接手都非常方便,看起来谁都可以替代 代码写得烂,每天风风火火改 bug,各种救火,解决各种线上重大问题,于是顺理成章成为公司亮眼人才 代码乱的只有自己能看懂,公司不可替代的重要人才 |
71
Orenoid 2020-03-11 17:52:02 +08:00
愣是把缺乏职业素养的行为说得如此冠冕堂皇
|
72
islandev 2020-03-11 17:54:22 +08:00
善战者 无赫赫之功
|
73
wangchonglie 2020-03-11 17:55:05 +08:00
在一定程度上算是, 特别是在代码不规范的小公司里面。但是如果我们要向更高的层次发展, 不应该在乎一时的得失。
|
74
wly19960911 2020-03-11 17:57:43 +08:00 via Android
我有时候想写注释,可是最后不少东西除了实体类字段含义,我就写不了什么注释,一眼看过去明摆着意思的方法名、局部变量名、类型,就知道什么意思,只能说还没有接触复杂的东西
|
75
jsjgjbzhang 2020-03-11 18:07:05 +08:00
这事不能细说
|
76
annielong 2020-03-11 18:31:22 +08:00
那种好几行的代码最后精简压缩成一行的没注释还真不好看懂
|
77
pastgift 2020-03-11 18:57:43 +08:00 1
不是对自己的保护,是对自己的不负责任
我从来都是把文档 /注释写全, 上一次离职的时候,交接的时候连续讲代码讲了 2 个 8 小时,另外还补了一份至少一万字的说明文档, 从架构设计,历史沿革,可能存在的坑,如何处理新需求,可能存在的前后需求冲突全写明白了才走的。 后来新公司不是很如意,联系了之前的老板,然后直接回去了, 大家都很欢迎,之前的项目同事也早就完美接手并且没有任何问题 藏着掖着或许可以让你一时看似风光,有谈判权,但这只是「过去」,价值不高, 人家放弃代码直接重写说不定就几个星期的事情,那样你留下的评价就是「被替代者」, 所以并不牢靠 把所有的东西都放台面上讲清楚了,别人还认可才是真牢靠, 因为只有这样人家对你的认可是基于「将来」的, 将来的事情,可大可小,想象力无限大 |
78
charlie21 2020-03-11 19:18:51 +08:00 1
你们公司很奇怪阿
在我们这里 不写注释的程序员会直接被开除,比如 入职两周 一句注释没写过 那么会直接被开除 你们是怎么长大 |
79
charlie21 2020-03-11 19:37:02 +08:00 2
这是写在合同里的,“写出可维护的代码”,如果我不执行合同,那么如果公司觉得自己完全有理由也不执行合同,甚至 给来个 996,what should I say ?
突然明白了人们在 996 面前的软弱性从哪里来 |
80
InkAndBanner 2020-03-11 19:40:06 +08:00
@gimp 哈哈哈哈哈哈笑死我了
|
81
cedoo22 2020-03-11 19:41:46 +08:00
其实, 对于写代码的来说,如果不是研发组长 或者项目经理, 只是写代码,很大程度上完全没有话语权,是可以随时被替代的。
某种程度上,这是在保护自己吧,项目需求有需求人员,项目架构有研发组长,主程只能算是高级工具人,除了自己代码外,完全没有什么‘权力’,没办法给自己累积资源 / 话语权,除非有强制要求代码注释,否则又费事又费时间,写它干啥。 中小型公司估计很少又代码注释强行要求(代码审查之类的),就算有也只是原则上的,不会扣钱什么的。 |
82
firefox12 2020-03-11 20:49:32 +08:00
你的代码很难读 意味着 取代你的成本很高。资产方会考虑替换你的成本。你的代码很好读,很好理解,那么意味着换你的成本很低。
说直接换掉的,我只能说 呵呵。 |
83
meathill 2020-03-11 20:59:42 +08:00 1
如果你只能靠不写注释保护自己,那我只能建议你换份工作……何必呢,放彼此一条生路,相濡以沫,不如相忘于江湖
|
84
lavenderkissyou 2020-03-11 21:10:11 +08:00
这种人当了老板的话,底下员工还是不写注释,而这位老板不仅不提醒,还大加赞赏,那我觉得他是真的没有写注释的习惯,他确实不喜欢写注释
如果他当了老板,底下员工不写注释,他就破口大骂,那就说明他其实是有写注释的需求的。 所以可见他在这里不写注释,就是恶心人,没啥好说的。 |
85
zsen 2020-03-11 22:06:47 +08:00
从描述上来推导,这哪是保护啊,应该是害了自己吧。。。
「哥们儿是我们的主程,从老板到周边相关同事都口碑甚佳,模范员工。」——那么离职,应该是主动离职的吧? 主动离职那不是都恨不得早走早好的? |
86
graffitist 2020-03-11 23:27:38 +08:00
好的代码,一目了然的那种可以不需要注释。那种逻辑复杂,而且写的一团糟的。不加注释你自己过几天都看不懂。
|
87
SpiderXiantang 2020-03-11 23:44:59 +08:00
好的代码不需要注释 方法名和参数解释一切
|
89
martianyi 2020-03-12 00:08:20 +08:00
好代码不需要注释,所有人都看不懂他的代码也许是本来写的就不行...
|
90
MartinWu 2020-03-12 00:23:33 +08:00
脑子正常点的公司都知道止损是一种收益
|
91
sagaxu 2020-03-12 01:02:13 +08:00 via Android
如果不是有两个代码库,自动移除注释提交到公司库,很难想象有人可以在零注释的情况下 hold 住自己的陈年代码。
|
92
CuVee 2020-03-12 02:06:00 +08:00
只写自己看得懂的注释
|
93
alphatoad 2020-03-12 05:06:52 +08:00 via iPhone
你们没有 code review 吗?
|
94
0o0o0o0 2020-03-12 05:35:29 +08:00
写个注释加密插件,自己看懂别人看不懂不就好了。
既解决了“习惯不好”,又解决了“自己容易被替换”。 |
96
janxin 2020-03-12 08:46:39 +08:00
外行指导内行导致的问题,你们的主程确实不行
|
97
loading 2020-03-12 08:48:08 +08:00
我前几天看了本书,是哪一本忘了。
大意就是,如果你觉得这个团队不能离开你,那是极度自恋的表现! |
98
xuanbg 2020-03-12 08:52:11 +08:00
不写注释保护不了你。我就没听说过哪个程序员因为不写注释而开不掉的。你写的代码再怎么难以理解,总能搞得懂。实在搞不懂,大不了重新写过。
|
99
isleon 2020-03-12 08:55:20 +08:00
我没有那么多心思,只是单纯觉得不写详细的注释,一点也不优雅
|
100
cw2k13as 2020-03-12 09:25:05 +08:00
你这逻辑有问题啊,好代码是不需要注释的阅读性很高很容易理解,反而是写的烂让人看不懂的才要注释
|