
git 提交代码的注释都是“更新”,“修改”,“上线”等等
变量命名都是a、b、aa等等, 出现英文单词还拼错,把cname拼成canme、debug拼成dubug等等
线上代码竟然加上assert,让程序强制 core 掉
编译一大堆警告不处理
自己修改了的话同事又说他本身写的很好被我修改乱了,不修的话又看不下去
求问我这种是强迫症吗?怎么解决??
|  |      1crisewng      2018-04-03 16:05:30 +08:00 辞职跑路 | 
|      21313213      2018-04-03 16:07:03 +08:00 代码写成这样都能找到工作??? | 
|  |      3yogogo      2018-04-03 16:08:30 +08:00  1 呆着准备背锅? | 
|      4java253738191 OP @1313213 同事级别比我高 | 
|  |      5blaxmirror      2018-04-03 16:10:54 +08:00 呃...弱弱问一下什么类型的公司,你们不做 review 的吗?我们 Team 一个函数命名都得为了其他人方便理解争论个半天 至于怎么解决,每天都跟这样的人在一起你不怕被同化吗?不跑路留到猪年吗... | 
|      6java253738191 OP  1 @blaxmirror 互联网 top5 的公司,哪有什么 review 吧,都快被同化了 | 
|  |      7Mirachael      2018-04-03 16:16:09 +08:00  5 闷头发育,不要浪 | 
|  |      8AltairT      2018-04-03 16:20:44 +08:00 via iPhone | 
|  |      9murmur      2018-04-03 16:22:00 +08:00 都现在了能靠 a aa bb 给程序跑起来的也是人才 | 
|  |      10pexcn      2018-04-03 16:24:01 +08:00 我也看到过这样的代码,后来辞职了 | 
|      11AnsonQAQ      2018-04-03 16:26:50 +08:00 猥琐发育,不要浪 | 
|      12loveCoding      2018-04-03 16:28:23 +08:00 跟 leader 商量下,先补单元测试,尽量写全一点 case | 
|  |      13WinMain      2018-04-03 16:35:21 +08:00 我开始思考目前的 top5 是哪几个,BAT + 京东 + 头条? 还是美团 + 头条 | 
|  |      14blaxmirror   nbsp;  2018-04-03 16:35:28 +08:00 @java253738191 那就很 tricky 了,要么像楼上说的闷声发大财,做好自己的事情,要么换个项目?应该有不少流动的机会吧,这种人原则上也就是个例了,反正能离多远离多远。如果本来就过的不开心就可以开始找工作了 | 
|      15java253738191 OP @loveCoding 单元测试已经被同化了,开始还老老实实写 mock,看到同事的单元测试就是写类的 main 函数,而且就一个正常的 case,我就放弃单元测试了 | 
|  |      16catteroLo      2018-04-03 16:36:50 +08:00 写公司代码我都是把 IDE 的拼写检查关掉的,要不然是一片黄 | 
|      17wxkvEX      2018-04-03 16:43:01 +08:00  1 楼主简直幸福死了。我改烂代码,心烦的不行,顺手记录了一下行为,纯吐槽向: 1.变量名 垃圾命名如 student1 ;装神弄鬼,故弄玄虚,如 crUsageId,也不解释带不带 cr 有什么区别 2.脱裤子放屁,画蛇添足,几个多层容器倒来倒去,最后还是那些东西 3.拼写错误 /错别字 4.常量混乱,每个文件一套 5.常量混乱带来的不一致问题,每个文件的值和命名方式可能不一样,但实际上是一个东西 6.长函数 /循环,一个循环几百行,里三层外三层,靠 7.逻辑纠结,想到哪写到哪,不考虑合理性 8.过多的参数,最多见过 40 个形参 9.隐含的重构风险: 代码难以理解,出错后难修改 10.魔数 11.重复,大同小异的代码块从来不抽象,各种复制粘贴 | 
|  |      18shijingshijing      2018-04-03 16:50:34 +08:00 via iPhone 不跑留这里过六一儿童节么? | 
|  |      19blaxmirror      2018-04-03 16:52:23 +08:00 @wxkvEX 看到第 10 条笑了 hhhh,好奇他们的魔数是个什么东西 | 
|  |      20yongjing      2018-04-03 17:00:04 +08:00 还有单元测试? 严重影响开发进度呀! | 
|  |      21shijingshijing      2018-04-03 17:02:28 +08:00 via iPhone @blaxmirror 是 magic number | 
|  |      23jrtzxh020      2018-04-03 17:35:06 +08:00 呃,每个新来的看以前同事交接的代码,都会感觉是一坨 shi。。。 | 
|      24xuchen      2018-04-03 17:37:22 +08:00 要么忍,要么滚~新人都是搞糟心的代码的~ | 
|  |      25pynix      2018-04-03 17:40:41 +08:00 辞职跑路。。 | 
|  |      26John60676      2018-04-03 17:45:57 +08:00 观察了一下,楼主是百度的? | 
|  |      27newmlp      2018-04-03 17:49:06 +08:00 一般局部变量我懒得写名字也是用 a,b,c,aa,bb,dd 这种起名字的( ̄ ̄)~* | 
|  |      28Midnight      2018-04-03 17:53:49 +08:00 | 
|  |      29Midnight      2018-04-03 17:55:42 +08:00  7 | 
|      31FenGuWu      2018-04-03 18:06:32 +08:00 via Android 买一本 重构改善既有代码的设计。看完就会发现久旱逢甘霖!!!美滋滋!! | 
|  |      32NingAnMe      2018-04-03 18:18:55 +08:00 到公司,已经把一套程序根据 PEP8 重构了一遍了 | 
|      33ZZZZZZZZTC      2018-04-03 18:31:52 +08:00 人家就是要代码写烂点,为了让自己难以被替代 | 
|  |      34laodao1990      2018-04-03 18:42:14 +08:00 1 万 4 千多行的类你见过吗? 3000 多行的方法你见过吗? 一行有几百个字符从来不格式化你见过吗? | 
|  |      35Biwood      2018-04-03 19:09:25 +08:00 我的原则是,如果那个人还在公司,他自己的代码自己修改,我只是给出修改意见 | 
|      36woodface2233      2018-04-03 19:12:03 +08:00 via iPhone 标准答案:走人 | 
|      37lusi1990      2018-04-03 19:21:00 +08:00 via Android 搞 c 语音的吧 | 
|  |      38PHPer233      2018-04-03 22:14:21 +08:00 via iPhone 煞笔写的代码。一般我碰到不写注释的代码,直接删掉,看你麻痹,不看了。鬼知道你写的什么? | 
|  |      39kljsandjb      2018-04-03 22:18:00 +08:00 via iPhone 我天天是你这种心情 | 
|  |      41wangbenjun5      2018-04-03 22:22:56 +08:00 还真是,我们公司不大不小,业界小有名气,进来一看代码也是一坨屎,没办法,能跑就行,没人看代码 | 
|      43vebuqi      2018-04-03 23:33:29 +08:00  1 日常是在 9k 行的一个 js 文件里摸爬滚打。。 | 
|  |      44whoisghost      2018-04-03 23:37:13 +08:00 @blaxmirror 你们这 Team 我喜欢呀!你们公司在成都吗?我要去霸面! | 
|  |      45blaxmirror      2018-04-03 23:55:58 +08:00 @shijingshijing 难道我理解有问题?我只是想问这种写垃圾代码的人怎么可能会写出真正的魔数...你这突然冒个英文翻译给我是什么意思呀...一脸懵逼 我脑海中的魔数是卡马克的浮点开方算法用的那种,所以好奇普通人写的魔数会是什么样子而已 | 
|  |      46blaxmirror      2018-04-03 23:58:09 +08:00 @whoisghost 上海爱立信,成都应该也有,你可以去了解下哈哈,待遇一般但是福利不错,无奈被华为打得节节败退 | 
|  |      47blaxmirror      2018-04-04 00:05:41 +08:00 @shijingshijing 我感觉我有些过分解读了,抱歉,应该就是好心提示我,无视我前一条吧~握爪 | 
|      48Akkariin      2018-04-04 08:47:24 +08:00 非常能理解楼主的心情,我现在也是这样,看以前大神们写的代码从来没有一种 GET 到的感觉,而是这 TM 的都是些什么东西? 比如,有看过一个存储过程,调出一个问题列表,有个参数是问题类型,0 是未回答,1 是已回答,然后 2006 是所有,我当时一阵蒙蔽,然后突然又好像想到了什么,理解了他的想法,去看了眼生成日期,果然是 2006 年,我是不是也被同化了? | 
|      49grewer      2018-04-04 09:26:34 +08:00 一般说 topX 那就是 X 名 | 
|  |      50mcfog      2018-04-04 09:29:39 +08:00  1 除了 2 是实锤,别的都不好说 1. git 的零碎提交随便写个 WIP 或者 update 之类没问题,rebase 后好好写 /merge commit 好好写就行了。甚至按团队流程,完全无视 vcs 的 message,改以 merge request / change log 等形式追踪也未尝不可 3. 早崩溃很多时候是好事情,让程序在可疑的状态下运行比 coredump 危害大得多 4. 完全看情况 5. 可能是楼主心态爆炸后的沟通存在问题 我发现很多程序员对 legacy code 缺乏敬畏,你新写的代码再好也不如 legacy code 是经过生产环境千锤百炼的,处理这些代码,是否修改,是否重构,是否重写都是非常重要又困难的决定 | 
|  |      51peinhu      2018-04-04 11:57:23 +08:00 王垠都不敢随便动别人的代码,楼主这是准备作死吗。。。退一万步讲,即使你改好了,你和你同事的梁子就结下了 | 
|      52geying      2018-04-04 12:43:38 +08:00 // magic  // do not touch ! | 
|  |      53Akagi201      2018-04-04 12:47:12 +08:00 我还真遇见过这种人, 不得不说我太 native 了. 人家就是要代码写烂点,为了让自己难以被替代 +1 | 
|      54ShareDuck      2018-04-04 13:10:18 +08:00 你同事自带代码混淆功能。 | 
|  |      55caiyue1993      2018-04-04 13:13:30 +08:00 看了楼上的发言,不太想在 v 站回复了都...现在码农还是太多了,软件工程师还是少得可怜... | 
|  |      56bullettrain1433      2018-04-04 13:14:42 +08:00 @ShareDuck 23333,墙都不扶 | 
|  |      57ghostman      2018-04-04 13:16:02 +08:00 不要改别人的代码,让他自己改。 | 
|      58micean      2018-04-04 13:38:26 +08:00 公司的拼写错误已经多到治好了我的强迫症 | 
|  |      59nl101531      2018-04-04 13:52:40 +08:00 为了同事友谊,不要改. | 
|  |      60ycqueen      2018-04-04 14:10:45 +08:00 来我们公司吧,嘻嘻,你不会有这种烦恼,我们公司在北京望京哦,求关注,求回复 | 
|      62whatTheGhost      2018-04-04 17:05:31 +08:00 线上代码强制 core 这个不一定是黑点。比如我用了 libuv,libuv Release 编译也有 assert 强制 core,这个还改不了。有时候已经是错误了,还不如早崩。 本人之前的同事,工作三年甚至还没养成代码缩进习惯(毕业于某 CS 专业比较好的 985 ),喜欢到处复制粘贴代码(比如需求改了,把 xxx 函数内代码复制一下,改名 xxx2 ),完全没有时间 /空间复杂度概念,喜欢到处飞全局变量,用全局变量来做线程同步…… | 
|      63gjquoiai      2018-04-04 17:08:20 +08:00 https://imgur.com/a/iJcc0 凑合活着呗 ┑( ̄Д  ̄)┍ | 
|      64gjquoiai      2018-04-04 17:09:14 +08:00 | 
|      66sampeng      2018-04-04 17:19:29 +08:00 1。如果这是一个一个人开发的项目,这么写未尝不可。工具是服务人的,不是人去完美服从工具。 2.拼写错误不能忍,这个倒是可以吐槽一下。。但 a。a。b 这样的。看情况。如果是在非常小的函数里面。比如就 5-6 行。。我经常写 tmp 啊。tmp1.tmp2 之类的。以前我也很反感。后来发现真没那么多词去形容中间态或者临时用的。大函数除外。。大的主业务逻辑绝逼不能这么搞。。会死人的。。。其实你去看看其他源码。比如 git。。说实话,我简直看得想一头撞死在墙上。。第一版功能少,勉强还能看。看最新版。。。真的心里在呐喊,tm 什么玩意。。。到处都神奇数字,神奇变量,全局变量到处飞到处初始化。。。 3.看情况,assert 如字面含义,绝逼 100%不可能会是异常的。如果是异常了。直接崩溃未尝不可。你得赶紧处理。但如果要求 100%不能崩的。。所以看业务。最近写 rust。。原先特别担心写 unwrap。。后来发现其实没那么糟糕。。就随心所欲了。。。 4.依然看情况,老代码。可能是一个开发用几天时间赶工赶出来的。根本没时间去处理。。。 5.不要主动去修改任何别人的代码!!除非你提前跟他说,你需要重构,怎么重构巴拉巴拉。否则就是自讨苦吃。。。 | 
|  |      67wjm2038      2018-04-05 06:33:43 +08:00 via Android @blaxmirror 不明所以的赋值吧,我是这么理解的 | 
|  |      68whoisghost      2018-04-08 22:02:37 +08:00 @blaxmirror 呃,那成都就可能不会像你们 team 那么好了,毕竟是团队,不是整个公司。 |