关于DIP,IoC,DI,以及IoC容器的一个说明

来源:互联网 发布:阿里云服务器终端密码 编辑:程序博客网 时间:2024/06/02 07:27
很久没有写博客了,直接进入正题,因为最近准备学习php的框架larval,这个框架的核心是IOC容器,这就需要了解到IOC的相关内容了

DIP:中文的意思是依赖倒置原则软件架构设计的原则之一,通俗的说就是高层模板定义接口,低层模板负责实现功能的一种软件设计原则,举一个简单的例子,就好像是你去银行取款,你必须做的一件事就是将你的银行卡插进去卡槽,在这个前提之下,ATM并不会在意你的银行卡是什么银行卡,工行或者建行都行,只要你的银行卡的大小形状是适合卡槽的,在这个例子中,高层模板就是ATM,底层模板就是银行卡,ATM定义了一个可以提供插卡的卡槽,而银行卡就是低层模板,负责区分不同的银行卡卡种以及其他具体信息

IOC:DIP说到底只是一种设计原则,设计的原则有很多,而IOC就是DIP的具体实现,也就是DIP的软件设计模式,IOC为互相依赖的组件提供抽象,将抽象(低层模板)对象的获得交付给第三方(系统)来控制,即依赖对象不在被依赖模板的类中直接通过new来获取,常用方法有两个,一是构造函数注入,一个是属性注入,意思就是通过构造函数或者属性的方式进行传递依赖,当然还有一种相对复杂而且使用的相对比较少的方法就是接口注入,具体怎么用代码去实现就不进行展示了


随后在用larval进行开发的时候再用具体代码进行讲解
原创粉丝点击