Angular4.0_依赖注入简介

什么是依赖注入模式及使用依赖注入的好处

依赖注入:Dependency Injection 简称DI

var product = new Product();
createShipment(product);

我们new一个对象实例,然后当做参数传递给createShipment这个方法,这种也可以成为注入。

var product = new MockProduct();
createShipment(product);

当然,我们也可以很方便的用Product的子类进行替换

var product = new Product();
var shipCompany = new ShipCompany();
var address = new Address();
var oder = new Order();
order.setAddress(address);
createShipment(product,shipCompany,order);

但是,如果我们需要大量的实例对象时,就需要大量创建使用实例化对象代码,如果有种方式可以替我们实例对象,以及其依赖的对象。我们就可以精简代码,我们就写一个createShipment()方法就可以了,这就是依赖注入模式要解决的问题。

控制反转:Inversion of Control 简称IOC
它是和依赖注入对应的概念,意思是将依赖的控制权由代码的内部转换为代码的外部。

控制反转注重效果,依赖注入注重如何实现。
Angular实现控制反转的手段就是依赖注入。

使用依赖注入模式的好处:
1.松耦合,可重用性

2.提高可测试性
这里写图片描述
加入登录的后台服务还没开发好,我们可以先编码一个假的登录MockLoginService注入到LoginComponent中,等真正服务器代码开发好,再把真正的RealLoginService注入。

猜你喜欢

转载自blog.csdn.net/wtdask/article/details/81203798