这是一个非常古老的想法,最初是在 1980 年代初实施的。然后它被称为“配置编程”、“软件集成电路”或“架构描述语言”。“依赖注入”是企业开发人员最近重新发现这些想法时创造的新词。
例如,看看 Conic [1] 和 Regis/Darwin [2] 系统。这些系统用于编写工业控制软件,并直接影响了为 Phillips 电视机编写软件的方式**。达尔文的一个有趣特征是该语言同时具有文本和图形表示 [3] 以及形式语义。
Conic 和 Regis/Darwin 比现有的 DI 框架做得更多,因为它们被用来构建分布式系统:将配置语言编译成一个程序,在机器网络上并行部署系统(形式语义定义了这种“细化”进程运行)。相比之下,Spring、Guice 等仅在单个地址空间内配置对象,而将分布式组件的连接困难留给了程序员。
这个想法的另一个重新发现是用于传感器网络应用程序的TinyOS操作系统,尽管它没有组件和配置的概念模型。
- Kramer, J.、Magee, J.、Sloman, MS 和 Lister, A.,CONIC:分布式计算机控制系统的集成方法,IEE Proceedings.,130,Pt。E,(1983),1-10。
- Magee, J., Dulay, N. 和 Kramer, J., Regis:分布式程序的建设性开发环境,分布式系统工程杂志,卷。1,第 5 期,1994 年 9 月,304-312
- Kramer, J.、Magee, J. 和 Ng, K.,图形配置编程,IEEE 计算机,22(10),(1989),53-65。
**现在可能“曾经”。