• 请不要在回答技术问题时复制粘贴 AI 生成的内容
errorMsg0xff
V2EX  ›  程序员

怎么区分是复用还是耦合

  •  
  •   errorMsg0xff · Mar 14, 2024 · 2868 views
    This topic created in 971 days ago, the information mentioned may be changed or developed.
    同事想复用我的代码,但是我觉得是耦合,最终还是用了,然后要求我每次改这块都要同步他
    9 replies  •  2024-03-15 11:42:57 +08:00
    dkfjiwerj
    dkfjiwerj
    Mar 14, 2024
    1
    从代码纬度是复用,从你们俩维度是耦合
    namonai
    namonai
    Mar 14, 2024
    2
    他干嘛不把你的代码 copy 一份自己维护
    FYFX
    FYFX
    Mar 14, 2024
    3
    要是他需要关注你每次修改的细节那毫无疑问是耦合
    chaoschick
    chaoschick
    Mar 14, 2024 via Android
    4
    代码复用导致耦合度增加
    需要通过代码冗余 实现解耦
    xloger
    xloger
    Mar 14, 2024❤️1
    5
    封装的一个重要理念是:考虑清楚层与层之间的边界。代码是分层的但是逻辑是耦合的话,那这个封装没啥价值。

    然后,怎么判断是复用还是耦合,你想象一下:把你的代码提供的对外方法抽成接口,每个写上注释。
    那么如果对方只需要看这个接口和文档就能顺利调用,且你的代码实现或者更新是不影响他的(除非增删方法),那你们这就是复用。
    如果你的某处代码实现的改动必须要他配合着一并更新,那就是耦合。
    ashuai
    ashuai
    Mar 14, 2024
    6
    你封装成一个公用方法或一个公用类,他来调用,这叫复用。
    你把代码给他,这叫 ctrl CV
    为什么更新了还要同步给他……
    lifei6671
    lifei6671
    Mar 14, 2024
    7
    你们两个要划分好界限,输入输出通过 interface 约束,他只依赖你的接口,不依赖实现。否则就是耦合了。
    lscho
    lscho
    Mar 14, 2024
    8
    #6 才是对的

    代码复用是把重复代码封装起来,别人/别的模块只调用

    你这明显不是复用
    muzei233
    muzei233
    Mar 15, 2024
    9
    学到了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2316 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 13:28 · PVG 21:28 · LAX 05:28 · JFK 08:28
    ♥ Do have faith in what you're doing.