Pythonic依赖注入:实用指南
上世纪90年代,Bob Martin提出了一个特别简单但有用的原理来解耦软件组件: 高级模块不应依赖于低级模块。 两者都应依赖抽象。 抽象不应依赖细节。 细节应取决于抽象。 在用于软件开发的SOLID框架中,这被称为依赖性反转原理。 依赖注入是一种设计模式,支持设计遵循此原理的软件组件。 在本文中,我们将研究一些在Python中进行依赖项注入的选项,其中一个有用的支持PEP484的Python 3框架。 作为运行示例,我们将编写一个程序,该程序通过Web API远程控制围栏防护机器人。 为此,我们将编写一个使用requests库的小型API客户端: 汇入要求 RobotApi类: url = 'http://robot-api.com'…