V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
bingyiyu
V2EX  ›  程序员

组里 40 老大哥有错不改还注释他人代码怎么解

  •  
  •   bingyiyu · 2021-08-06 10:12:37 +08:00 · 6597 次点击
    这是一个创建于 1189 天前的主题,其中的信息可能已经有所发展或是发生改变。

    spring cloud 项目,用的 feign,框架是老大哥搭的。前阵子测试给我提 bug 说异常了代码还继续执行。 我就查了一下加了个全局的 decode,但是要求返回值都是统一的自定义 Respose 对象,拦截器里拿这个对象去反序列化。我们的代码绝大部分是标准返回自定义 Respose 对象的,但是老大哥偷懒直接返回了 VO 未拿 Respose 对象包装导致反序列化失败。 我给提了我去全局扫一遍帮他改,支支吾吾说要报告领导(产品还没上线而且又不牵扯业务逻辑),然后加了个 ifelse 把我的逻辑绕过去了(还没绕对,我 debug 一看还是有问题)。 然后就进入了扯皮阶段。好说歹说领导给同意我的做法了。我就把她的 ifelse 去掉了。提交至 master 。 然后第二天骚气的来了,前端给我提 bug 。 我一看好家伙他直接把我的拦截器给注释掉了,导致 feign 异常未捕获继续执行了

    49 条回复    2021-08-09 15:59:05 +08:00
    falcon05
        1
    falcon05  
       2021-08-06 10:17:49 +08:00 via iPhone   ❤️ 4
    修改回来然后,git commit -m 再注释掉我跟你没完!
    Aliennnnnn
        2
    Aliennnnnn  
       2021-08-06 10:18:00 +08:00   ❤️ 2
    提刀
    timle1029
        3
    timle1029  
       2021-08-06 10:20:35 +08:00   ❤️ 3
    你们的 code review 呢?为什么他能自说自话把你的代码去掉
    bingyiyu
        4
    bingyiyu  
    OP
       2021-08-06 10:22:11 +08:00
    @timle1029 他的账号是有 master 分支权限的,说起来有点搞笑,他一直在 master 上写代码。我给提了也不听,虽然现在项目还没上线问题不大
    bingyiyu
        5
    bingyiyu  
    OP
       2021-08-06 10:22:24 +08:00
    @timle1029 华生你发现了盲点
    HarryHook
        6
    HarryHook  
       2021-08-06 10:30:16 +08:00   ❤️ 1
    master 上写代码也太骚了
    360511404
        7
    360511404  
       2021-08-06 10:34:06 +08:00   ❤️ 4
    @HarryHook
    我只在 master 上写代码,因为只有我一个人...我就是 master 哈哈哈
    harde
        8
    harde  
       2021-08-06 10:35:23 +08:00   ❤️ 9
    能出现这个问题,要么你的公司很小,要么就没有技术主管,我跟你一样一路走来,建议你要么顶掉老顽固,要么换个公司,长期以往,既对你成长不利,对心情也不好~
    bingyiyu
        9
    bingyiyu  
    OP
       2021-08-06 10:41:38 +08:00
    @harde 膝盖中了一箭,基本被老哥说中了
    NjcyNzMzNDQ3
        10
    NjcyNzMzNDQ3  
       2021-08-06 11:15:00 +08:00   ❤️ 1
    查了一下就加全局的 decode 啊。。好像还是你改了拦截器,对象咋还要反序列化下才能用呢。。

    首先个人担心你还不了解业务就改全局不合适,其次你让老大哥改这个全局返回需求它不香吗?

    最后要是能只改自己负责的功能代码就最好了。
    MaxTan
        11
    MaxTan  
       2021-08-06 11:27:22 +08:00   ❤️ 1
    "她"是 40 岁的老大哥?
    uselessVisitor
        12
    uselessVisitor  
       2021-08-06 11:27:49 +08:00 via Android   ❤️ 1
    内部流转的就不要反序列化了吧
    a719031256
        13
    a719031256  
       2021-08-06 11:32:49 +08:00   ❤️ 1
    最好去找人家确认一下再改,大家协商着弄比较稳妥点

    40 岁的老开发,还不至于做这种蠢事
    auh
        14
    auh  
       2021-08-06 11:50:28 +08:00   ❤️ 2
    我建议你尊重别人的一切行为。包括他的私欲。更正一个人很难。想思考一下能不能兼容一下他
    bingyiyu
        15
    bingyiyu  
    OP
       2021-08-06 11:51:29 +08:00
    @a719031256 不,他就是懒
    bingyiyu
        16
    bingyiyu  
    OP
       2021-08-06 11:52:22 +08:00
    @auh 以技服人,有问题我这个人一定会指出。
    bingyiyu
        17
    bingyiyu  
    OP
       2021-08-06 11:53:29 +08:00
    @NjcyNzMzNDQ3 哎我咋管不住我这手呢,老大哥搭了框架但是一些基建啊规范啊还是不是很到位。我看到了就忍不住改
    del1214
        18
    del1214  
       2021-08-06 12:06:40 +08:00   ❤️ 1
    看透人生的表现
    webmasterisadog
        19
    webmasterisadog  
       2021-08-06 12:08:23 +08:00   ❤️ 2
    @bingyiyu #17 兄弟,你这想法很危险,也不成熟。容易碰钉子。
    建议你 听听 #8 的意见。

    等到你由你全权负责一个项目的时候,你再这样做。
    如果是刚出来没多长时间,建议在自己能控制的领域,好好表现。
    chairuosen
        20
    chairuosen  
       2021-08-06 12:09:46 +08:00   ❤️ 1
    谁改出的问题继续由谁改,把 BUG 转他
    auh
        21
    auh  
       2021-08-06 12:10:36 +08:00   ❤️ 1
    @bingyiyu 技术是个什么东西?以技服人?格局小了。
    webmasterisadog
        22
    webmasterisadog  
       2021-08-06 12:11:20 +08:00   ❤️ 1
    @bingyiyu 等你到了大厂这种级别的公司,更要步步为营啊。

    高技术的人的通病就是情商往往太低,太把项目当成事,以为是自己的,结果都是别人的。这其实都是私欲在作怪。
    queuey
        23
    queuey  
       2021-08-06 12:22:43 +08:00   ❤️ 1
    @360511404 一个人也不建议在 master 上写代码
    fredli
        24
    fredli  
       2021-08-06 13:03:02 +08:00   ❤️ 1
    继续杠,技术问题有把握没什么可让步的
    pinkSlime
        25
    pinkSlime  
       2021-08-06 13:10:23 +08:00   ❤️ 1
    时光荏苒 最终我们都会变成 40 老大哥
    bingyiyu
        26
    bingyiyu  
    OP
       2021-08-06 13:13:40 +08:00   ❤️ 1
    @pinkSlime 希望到那天我不会那么顽固,可以虚心接受问题,马上做出调整
    zliea
        27
    zliea  
       2021-08-06 13:26:28 +08:00   ❤️ 1
    master 权限全收回。
    其实我一直不理解为啥全局返回统一结构不统一处理,让业务专注业务不好么?
    bingyiyu
        28
    bingyiyu  
    OP
       2021-08-06 13:33:08 +08:00
    @ztechstack 我也不知道,刚 node 转 java 。测试给我提 bug 的时候,我才意识到 feign 内部服务异常未统一处理,再加的拦截器,自认为思路应该是没问题的,总不能每个调用的地方都插个 ifelse 判断状态码吧哈哈,太蠢了。
    zliea
        29
    zliea  
       2021-08-06 13:40:36 +08:00
    @bingyiyu feign 这个我没细测试过,之前一直用的 resttemplate,如果需要专门处理就自己实例化一个 resttemplate bean 。讲道理 feign 的 configuration 应该是能够在每个 client 上指定的,但 configuration 不能添加 @configuration,添加了肯定就是全局的。
    其实我的意思就是老大哥那边的框架应该进行统一封装,如果让我来做的话,每个接口封装一下 response,我也很不爽。
    gablic
        30
    gablic  
       2021-08-06 13:42:41 +08:00   ❤️ 2
    40 了还在看代码,是个狠人建议你别惹
    hcen1997
        31
    hcen1997  
       2021-08-06 13:50:16 +08:00   ❤️ 1
    @bingyiyu 之前我在的某外包项目就是 http 服务组件写了很多, 每一个调用的地方插入 ifelse
    要考虑到所有人的技术水平, 说不定有人就是习惯了复制 ifelse 呢?

    我还是推荐在自己的代码和模块中保持自己的坚持(如果你能坚持的话)
    但是和其他人一起的部分, 就要遵守惯例, 不要动
    darknoll
        32
    darknoll  
       2021-08-06 13:51:38 +08:00   ❤️ 1
    在 master 上写代码就很强势,我喜欢
    stillyu
        33
    stillyu  
       2021-08-06 14:27:04 +08:00
    40 岁,已经完成了原始积累,来上班就是混日子的
    a719031256
        34
    a719031256  
       2021-08-06 14:41:07 +08:00   ❤️ 3
    @hcen1997

    我才开始敲代码时也很鄙视 ifelse 写法,现在我很喜欢这种写法,简单暴力不会出错,有更多空闲时间摸鱼搞自己的东西,现在的心态就是工作是工作,工作一切以实用为主,剔除掉一切不稳定的因素,避免浪费自己太多时间,也避免加班,996 之类的情况
    ckdxc
        35
    ckdxc  
       2021-08-06 14:44:34 +08:00   ❤️ 1
    先把自己那个拦截器改回来, 然后再把他没有用包装类那个 bug 转给他
    no1xsyzy
        36
    no1xsyzy  
       2021-08-06 14:54:26 +08:00   ❤️ 2
    @auh 同样的话,我也完全可以丢给你来堵你这句话本身。
    X0ray
        37
    X0ray  
       2021-08-06 16:28:31 +08:00
    @stillyu 你 40 岁就能完成原始积累?太猛了。
    我 40 岁房贷还没有还一半。积蓄的话,顶上天了也就 100 w 左右。100w 能干啥是个问题。
    X0ray
        38
    X0ray  
       2021-08-06 16:29:53 +08:00
    我建议楼主不要去杠,做好准备换一个公司,对大家都好。
    hodur
        39
    hodur  
       2021-08-06 21:13:08 +08:00
    decode 可以细到 client 粒度,都返回 repsonse 对象并不好.
    看了一些回复,这样的老大哥不是个例
    xiaoming1992
        40
    xiaoming1992  
       2021-08-06 22:19:45 +08:00
    我们也有项目中在接口调用的时候插入 if else 判断状态码,我的解决方案是自己另封装一个 http 请求函数,只在自己负责的部分使用,尽最大可能不碰其他人的代码,不给自己找事
    dayeye2006199
        41
    dayeye2006199  
       2021-08-07 01:40:15 +08:00
    建议先对代码 review,分支合并先有一套规范再说。直接往 master 上面推代码怎么看都不是个好事儿
    auh
        42
    auh  
       2021-08-07 08:53:37 +08:00
    @no1xsyzy 都行
    crclz
        43
    crclz  
       2021-08-07 09:38:08 +08:00
    @bingyiyu 那你就让他在 master 写好了,估计他也不会使用除了 commit 和 push 以外的功能。你把发布分支换为另一个分支,例如 release 。
    crclz
        44
    crclz  
       2021-08-07 09:57:08 +08:00
    @360511404 其实小团队可以采用 trunk-based,即大家都在 master 上面写代码,优势是保证持续集成(集成=代码合并+单元测试+xx 测试),利于防止那种几周都不合并的代码。
    vone
        45
    vone  
       2021-08-08 13:01:28 +08:00   ❤️ 1
    1 、你是刚 node 转 java
    2 、基础框架搭建是这位老员工的负责,非你的职责范围
    3 、你在没有和上级沟通的前提下修改了基础框架,在全局范围内产生了破坏性升级
    4 、修改后可能没有进行汇报和宣导(老员工不知情)
    5 、过于看重技术,对其他同事缺少尊重
    IamUNICODE
        46
    IamUNICODE  
       2021-08-08 15:05:40 +08:00
    我一个人也不在 master 上改代码,分出一个 dev,分出一个自己,会污染自己代码的特殊功能再分一个
    jones2000
        47
    jones2000  
       2021-08-09 00:47:39 +08:00
    沟通下, 不能协商的话,就根据的原来的坑继续写. 前人挖的坑, 你不用去填, 继续往下挖, 挖到不能挖的时候自然有人给你填坑你的, 有大佬在前面挡子弹怕什么, 继续挖.
    bingyiyu
        48
    bingyiyu  
    OP
       2021-08-09 11:24:23 +08:00
    今天老哥又往 master 上提未编译通过的代码了。忍不了,部门群里 @他和领导了。
    我都给在项目里配了 githook push 自动编译都不用,这事情也不是第一次了
    master 上不给直接提交的事情也提过好几次了
    老顽固无疑了
    stillyu
        49
    stillyu  
       2021-08-09 15:59:05 +08:00
    @X0ray 不是我哦,我今年 30 岁,怕是完成不了原始积累了。上家公司一个同事,就是 40 岁,上海两套房,杭州一套房。来上班就是混的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1117 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 19:00 · PVG 03:00 · LAX 11:00 · JFK 14:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.