依赖注入作为语言特性?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (27)

是否有任何现有的现代编程语言显式地将依赖注入作为语言特性来使用,如果有的话,是否有例子是这样的编程语言如何使用它们的语法将程序依赖性与具体实现分开的?

(请注意:我并不是在寻找DI/IOC框架,我实际上是在寻找一种编程语言,它实际上将这个特性内置于该语言中)。

提问于
用户回答回答于

你不会发现依赖注入作为语言功能,因为它通常被视为设计模式。 设计模式是作为缺少语言特性的变通方法而出现的。 例如,如果您将第一类类型作为语言特性,则不需要工厂模式,如果有多种方法作为语言特性,则不需要双重调度模式。

设计模式的DI的语言特征是“参数模块”。

用户回答回答于

每一种OO语言都支持依赖注入。不需要特殊的语法。只需使用它们的依赖项(或稍后设置它们的依赖项)来构造对象。

实际上,你可以将所有依赖关系连接到程序顶部附近,不一定是main(),而是靠近顶部。

扫码关注云+社区