【发布时间】:2010-12-07 12:41:17
【问题描述】:
这几天我有一种感觉,依赖注入真的应该被称为“我无法下定决心”——模式。我知道这听起来可能很傻,但实际上它是关于为什么我应该使用依赖注入 (DI) 的原因。经常有人说我应该使用 DI 来实现更高级别的松散耦合,我得到了那个部分。但真的...一旦我的选择落在 MS SQL 或 MySQL 上,我多久更改一次数据库...很少对吗?
有没有人有一些非常令人信服的理由说明 DI 是要走的路?
【问题讨论】:
-
到目前为止,我喜欢你的所有理由......我知道,“获得” DI 的主要是经验丰富的程序员。据我了解,DI 是关于质量的。作为程序员,我们希望能够生产出最高水平的软件——并且对其进行测试会有所帮助。这些年来我写了很多代码,我很高兴地说,在过去的 10 年里,超过 50% 的代码仍在运行......而且没有 DI。也许这可以帮助您理解为什么我对 DI 有点保留?
-
显然DI相对来说是新的。所以当然你可以在没有它的情况下编写高质量的软件 - 但是随着测试框架和 TDD 等事物的进步,DI 可以使编写测试以及编写可在未来维护的代码变得更加容易(耦合)。