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

反感同事写的代码怎么办?

  •  
  •   herich · 247 天前 · 15653 次点击
    这是一个创建于 247 天前的主题,其中的信息可能已经有所发展或是发生改变。

    不谈技术好坏,就编码风格来说。和同事协同开发,同事特别喜欢搞一些封装,整个项目前期主要是他一个人撸的,项目中有不少他自己写(封装)的库, 20200121173735.png 20200121173820.png

    本人有一些代码洁癖, 能用内置库和官方库解决问题的绝不使用第三方库尤其是个人的库,项目中处处都是 zxxx 这些代码,感觉被 qj,比较反感这种风格,怎么破?

    141 条回复    2020-01-29 12:43:49 +08:00
    1  2  
    ace12
        101
    ace12   246 天前
    粘包警犬立即出动
    Chase2E
        102
    Chase2E   246 天前
    你这同事有点意思,刚毕业的吧?估计还没有接受过社会的毒打
    herich
        103
    herich   246 天前 via Android
    @DJQTDJ 那也可以说公司项目用自己的库呢?

    @SnailLin 安全和后期维护的确是个大问题


    @lbfeng 测试应该都差试过,目前能跑通,正常运行,以后随着他的这些库越来越多,估计只有他一个人看得懂项目代码了


    @drackzy go 的生态不像 java,python 那么成熟,所以免不了要封装适合业务的模块,但这种一个功能就搞成一个开源仓库,还弄到自己的私人帐号下,项目到处是这种代码,合作起来比较头疼


    @zzcworld go 的很多优秀的第三方包很多都是在个人的 github 仓库呀...
    herich
        104
    herich   246 天前 via Android
    @kwrush code view 是没有的,所以代码写得很随意,不过他有这习惯,之前写 python 也是这样的,pypi 上一大堆他的模块,docker hub 也有他的一堆封装的镜像(我是是在搞不懂为啥 docker 也要封装一下)


    @littlebaozi 对齐这个格式化一下就好了,问题不大,而他的这种代码外人很难弄的


    @mouyong go 语法比较简洁,加上 gofmt,代码格式没啥问题,就是不喜欢项目中这种夹杂很多私人仓库

    @sdushn 组长领导不会关注这些,他们只关心业务进度
    herich
        105
    herich   246 天前 via Android
    @Chase2E 我才是刚毕业一两年的🤣,他说他写过五年 c#,后来行业不景气,就写 python 了,也就比我大两岁而已。之前写 python 就有这习惯,lxml 有 xpath,他说他自己写个解析引擎,写了个 zxpath,后来 zxpath 又不要了,写了个 zxpath2,现在 pypi 上还有这两个模块,不过很久没更新了,之前的 python 项目也有大量的这种他私人的模块,docker hub 上也有一堆他的 ubuntu,golang,python 镜像,我是真的无语╯﹏╰,所以来吐个槽。不过业务代码他能力是比我厉害不少的
    ql562482472
        106
    ql562482472   246 天前
    的确很不妥 遇到这种应该全部重新封装 base 包在公司仓库里
    dawn009
        107
    dawn009   246 天前
    @zzcworld 这取决于许可证。使用得当没有任何问题。
    winterssy
        108
    winterssy   246 天前 via Android
    @tyrealgray 其实上 go module 的库也是删不了的,goproxy 有缓存
    iweus
        109
    iweus   246 天前
    看了一下他的库,有些几百行不到的代码也要整成一个库
    SpencerCJH
        110
    SpencerCJH   246 天前
    肯定这个同事的想法和能力,但他做的这些事情增加了很大的 risk,道理其实大家都懂的.

    看不惯就跑呗,年后面试去了[doge]
    yulon
        111
    yulon   246 天前
    重构造轮子就算了,这种套皮有什么意思= =
    tsui
        112
    tsui   246 天前
    这种反复重复造轮子是自己觉得写简历好看么?
    挺搞笑的。。。
    linZ
        113
    linZ   246 天前
    尽量少几个库。。。不然只要有人接手,就得重复写东西了,到时候一百个地方写同一个方法,保证教你做改动的时候改的欲仙欲死
    vicvinc
        114
    vicvinc   246 天前 via iPhone
    zstrimg 是啥..string ?
    herich
        115
    herich   246 天前 via Android
    @tsui 这个写在简历里怕是减分项吧🤣,猛地一看以为是个大牛,仔细一看基本都是封装别人的库造些轮子
    mmixxia
        116
    mmixxia   246 天前
    先沟通一下吧
    herich
        117
    herich   246 天前 via Android
    @vicvinc 我以前点进去一看是个把图片转换成字符图的库,是把其他三方库的代码拿过来的改的,再封装成自己的库🌞
    muller
        118
    muller   245 天前
    1.首先整个技术组有没有 code review 机制,这个是解决代码冲突障碍的起步
    2.CTO 或者高点小组长是否阅读过他的代码,是否支持,默认即支持
    3.一般公司发展到一定阶段都有自己的封装集成,golang 系统包让你调用 当然也让你来集成,在 IBM ctrip 我们大部分包都是自己内部二次定制开发集成,来适应公司的业务,封装是减少重复代码量,把要写一千行代码的封装暴露在一个 api 方法,完全没毛病,而且鼓励
    4.看别人集成代码自己不得不调用 感觉自己被 QJ,你认为你有代码洁癖,放在 leader 和 team 眼中可能会认为你缺少基本的协作精神
    5.他到底代码比你厉害不厉害? beyond you 就服从认怂,talk is cheapest,show me the code !!
    mengzhuo
        119
    mengzhuo   245 天前
    公司开发的代码不能放外网啊,这妥妥开除+吃官司的。
    learningman
        120
    learningman   245 天前 via Android
    @tt67wq php 怎么了,2020 年了还歧视 php,php 什么时候才能真正的站起来,冷抖哭
    falcon05
        121
    falcon05   245 天前 via iPhone
    面向跳槽的编码方式 😂
    dandandanerdan
        122
    dandandanerdan   245 天前
    这看的真是醉了。。。。。只能 refactor 代码了
    fighterlyt
        123
    fighterlyt   245 天前
    简单开了一下,都只是简单封装而已,没必要单独建库
    slyang5
        124
    slyang5   245 天前
    fork 到公司账号下
    guanhui07
        125
    guanhui07   245 天前
    要么接受,要么走人
    jin7
        126
    jin7   245 天前
    有个性.
    SmiteChow
        127
    SmiteChow   245 天前 via Android
    应在公司组织账号下,是否开源还需要领导批准,私自公布源码有法律风险。
    hantsy
        128
    hantsy   245 天前
    @herich 优先官方库,有三方优秀的库经官方优秀用第三方,绝对避免自己撸的库。

    一般开发,开发效率在第一位,好的东西拿来即用最好不过了。什么都是自己撸不现实。
    OllyDebug
        129
    OllyDebug   245 天前 via iPhone
    把同事吊起来打
    iugo
        130
    iugo   245 天前
    看样子不是不喜欢对方的代码, 只是不喜欢引用项中是对方个人的名字.

    如果是办公时间做的依赖, 就转移给公司账号.
    adoal
        131
    adoal   244 天前
    换同事
    laravel
        132
    laravel   244 天前
    送同事去武汉
    ggicci
        133
    ggicci   244 天前 via iPhone
    重构,改它,反 qj
    shynome
        134
    shynome   243 天前 via Android
    我也这么干,主要原因是因为如果我离职了想用这些包怎么办,重写一遍又太麻烦,不如放到自己名下。如果后面公司要求所有权归公司的话那就给公司好了,而且放到自己名下维护起来也更有责任感
    meeken
        135
    meeken   242 天前 via iPhone
    你那同事辞退了吗
    shujun
        136
    shujun   242 天前
    就是小团队,公共库缺少有效管理,放到个人账号上面也不合适。
    个人风格喜欢包库没办法。。。你们老大不管,你也管不了不是?
    ysy950803
        137
    ysy950803   241 天前
    还是看人吧,如果可以沟通还是沟通一下,然后每次 code review 都反复提醒,提醒到他养成习惯了就好了。
    如果是个**,放弃自己的代码洁癖,让代码烂死然后换公司。
    obama
        138
    obama   241 天前
    比较一下两者的 bug 跟性能,哪个更好用哪个
    srlp
        139
    srlp   240 天前 via iPhone
    有一说一,

    1. 有封装意识总好过无封装意识
    2. 公司代码不应随意放在 github 上
    3. 就他这种,不应该新开各种 pkg 吧,应该统一为项目内的 base 或 utils 目录下之类的。仅个人意见哈。
    4. 这种“项目基础组件”,应该由 cto/技术负责人 统一规划?
    CoderYellow
        140
    CoderYellow   239 天前
    私自开源
    ericgui
        141
    ericgui   239 天前
    @srlp 有一种思路叫做 anti pattern,故意造成某种私有的知识,他一走,这公司就玩不转了。
    1  2  
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2610 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 12:02 · PVG 20:02 · LAX 05:02 · JFK 08:02
    ♥ Do have faith in what you're doing.