Drupal 8 模块开发 8.4 : 概要

蒲公英 提交于 周四, 08/17/2017 - 16:48
Drupal8模块开发

原文地址:
https://docs.acquia.com/articles/drupal-8-dependency-injection-summary  
 

总结

服务容器的力量在于允许我们书写解耦合的功能,并把这些功能传递给需要它的地方。当注册服务时你也可以声明依赖。这意味着当 Drupal 实例化一个服务对象时,它也会实例化它的依赖,并传递给它的构造器。
想了解更多可以查看 documentation for Services and dependency injection 。  

我们回顾下服务,他们是什么以及他们是怎样工作的 ----- 他们是维护可重用、解耦合功能片断的一种伟大方式。
我们也引入了依赖注入这个概念 ----- 等价向函数(构造函数或者 setter 方法)传递参数。  

额外练习

  1. 追加一个能够作为服务的函数。
  2. 演示这个函数的静态和依赖注入版本。
  3. 查看核心代码,找出一到三处你认为可以用依赖注入代替的情况。
  4. 描述使用依赖注入的两种不同情况。
  5. 描述一种使用静态函数代替依赖注入的情况。