V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Levi233
V2EX  ›  问与答

关于模块化与代码复用的疑问

  •  
  •   Levi233 · 2017-10-20 18:06:30 +08:00 · 1206 次点击
    这是一个创建于 2582 天前的主题,其中的信息可能已经有所发展或是发生改变。

    一个项目,可能由多个子模块组成,比如如下结构:

    • project
      • moduleA
        • utils
        • models
        • ...
      • moduleB
        • utils
        • models
        • ...

    我理解的模块化是:任何一个子模块 都可以脱离项目 单独拧出来用

    但是 这样就会有一个问题,比如 moduleA 和 moduleB 要用到同一个 util 的时候 模块化的做法应该是在 moduleA 和 moduleB 的 utils 里面都塞一个这样的 util

    而从代码复用的角度来说,应该把这个公共 util 放到项目下的 CommonUtils 里面,但是这样的化,moduleA 和 moduleB 就必须依赖项目 无法单独拧出来了

    对于处女座程序员来说真的很难选择啊 qwq

    2 条回复    2017-10-21 10:05:17 +08:00
    hws8033856
        1
    hws8033856  
       2017-10-20 18:14:35 +08:00
    依赖倒置原则看一下
    hellohello123
        2
    hellohello123  
       2017-10-21 10:05:17 +08:00
    创建一个 util 项目,module A 和 module B 都依赖这个。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5576 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 06:42 · PVG 14:42 · LAX 22:42 · JFK 01:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.