依赖注入

柔光的暖阳◎ 2023-10-05 16:46 95阅读 0赞

把有依赖关系的类放到容器中,解析出这些类的实例,就是依赖注入。目的是实现类的解耦。

实例:Class A中用到了Class B的对象b,一般情况下,需要在A的代码中显式的new一个B的对象。采用依赖注入技术之后,A的代码只需要定义一个私有的B对象,不需要直接new来获得这个对象,而是通过相关的容器控制程序来将B对象在外部new出来并注入到A类里的引用中。这样做有什么好处呢?

解释:假如现在有N多个类,需要用到Class B,那就需要在类里面实例化N多次,这样对于后期的维护和管理都是不方便的,如果后期需求发生改变,那更改量有大很多。

上面代码中的就是依赖注入,现在又有一个问题,假如,现在类b中的b方法现在改名为c了,那a类里面的a方法中,就要将b类中调用的b方法改成c方法。那依旧涉及到那个问题,如果有N多个类要用到B类呢?那需要做的也是去N多个类中不断得去改,这样对后期得维护,需求更改都是要花费很大的成本。

因此,PHP中有一个接口类的说法,接口类:

PHP接口(interface)的特点

1、接口的方法必须是公开的。

2、接口的方法默认是抽象的,所以不在方法名前面加abstract。

3、接口可以定义常量,但不能定义成员属性,常量的定义和用法和类中常量一样。

4、类可以实现多个接口(相当于把多个功能集于一身,如手机实现了小灵通、MP3、MP4的功能)

5、接口也可以继承接口。

不多做解释,直接贴代码:

链接:https://www.jianshu.com/p/31b299bf04d8
来源:简书

发表评论

表情:
评论列表 (有 0 条评论,95人围观)

还没有评论,来说两句吧...

相关阅读

    相关 依赖注入

    把有依赖关系的类放到容器中,解析出这些类的实例,就是依赖注入。目的是实现类的解耦。 实例:Class A中用到了Class B的对象b,一般情况下,需要在A的代码中显式的ne

    相关 5 依赖注入

    依赖注入 简介 依赖注入(DI)是一种让代码管理其依赖关系的设计模式。 对象或函数可以通过三种方式获得所依赖的对象(简称依赖): 1. 创建依赖,通常是通过

    相关 Laravel:依赖注入

    整个 Laravel 框架的基石是一个功能强大的 IoC 容器(控制反转容器),如果你想真正从底层理解 Laravel 框架,就必须好好掌握它。不过,也不要被这个名头吓住,要知