代码之家  ›  专栏  ›  技术社区  ›  Vadim

除了TDD之外,松散耦合代码还有其他好处吗?

  •  4
  • Vadim  · 技术社区  · 17 年前

    当我做TDD时,它迫使我雇佣 Dependency Injection 原理,我最终得到了松散耦合的代码。

    我被告知很难理解具有松散耦合代码的应用程序。

    你能告诉我松散耦合代码的优缺点吗?

    6 回复  |  直到 17 年前
        1
  •  7
  •   Manu JCasso    17 年前

    最大的优点是,对一个模块引入更改不会以不可预测的方式破坏其他模块。

        2
  •  4
  •   solsson    17 年前

        3
  •  3
  •   Pablo Fernandez    17 年前

    另一个好处是,当您有多个实现时,能够更轻松地替换组件。

    假设您有一个购物车系统,它通常存储和读取数据库,这是默认设置。但是您可以进行注入,这样它就可以使用后端,这虽然不是很好,但是在您没有数据库的情况下它可以工作。

        4
  •  2
  •   xtofl Adam Rosenfield    17 年前

    因为它是松散耦合的,所以它是高度可变的。这就是重点。如果您不需要,松耦合可能会引入许多间接操作,从而导致系统具有更高的“深度”:您需要向下查看一个级别,以便查看所有发生的事情。

        5
  •  1
  •   Hooray Im Helping codaddict    17 年前

    正如其他人所说:好处是,当代码/模块/对象/组件的其他部分彼此不依赖时,交换它们就容易多了。

    与所有OO设计一样,您必须进行权衡——对于您来说,拥有易于交换的高度模块化代码是否更重要?还是更重要的是要有更简单易懂的代码?你必须做出决定。

        6
  •  0
  •   cgp    17 年前

    重用、可扩展性和减少副作用。

    推荐文章