编程思想—控制反转(IOC)及依赖注入(DI)

1.什么是依赖注入

在面向对象的编程语言中,一个对象的行为方法往往需要外界的对象的行为协助才能完成。

例如:小李去ATM机取钱,那小李的取钱的整个行为的完成需要ATM实例取款行为的协助才能完成。

public class people{
  private IATM _atm; 
  private string password;
  private string id;
  public  decimal GetMoneyByATM(decimal money)
  {
    return _atm.Withdraw(this.password,this.id,money);
  }
}

就上面列举的例子,我们们可以总结出:小李去ATM取钱的行为,必须使用ATM才能完成。我们也可以讲:ATM与ATM取钱的动作存在依赖关系。依赖对象的创建也就成为了依赖注入所要解决的问题。依赖注入的方式一般分为两种类型:依赖注入(Dependency Injection,简称DI)和依赖查找(Dependency Lookup)。

2.依赖注入能解决问题

解决对象之间调用的耦合关系。

3.依赖注入及如何实现依赖注入

顾名思义依赖注入就是依赖对象注入到实现某个行为的类。注入的方式包括:属性注入,构造函数注入。

属性注入就是:依赖对象通过属性的方式注入到类,构造函数注入:依赖对象的注入通过构造函数参数实现。

不论是通过属性方式注入还是构造函数的注入,依赖函数的创建一般都是通过反射方式进行创建。

  

ASP.NET 方面极力推荐 (美) Stephen Walther 的《ASP.NET 4揭秘》
原文地址:https://www.cnblogs.com/Lyunwen/p/5576544.html