设计模式

DIP、IoC、DI、JS

依赖反转原则

依赖反转原则(Dependency inversion principle,DIP),是一种特定的解耦形式,使得高层次的模块不依赖于低层次的模块的实现细节,依赖关系被颠倒(反转),从而使得低层次模块依赖于高层次模块的需求抽象。———— 维基百科

该原则规定: 1. 高层次的模块不应该依赖与低层次的模块,两者都应该依赖于抽象接口。 2. 抽象接口不应该依赖于具体实现。而具体实现则应该依赖于抽象接口

DIP 只是解决了高层次模块直接依赖低层次模块的问题, 但是存在依赖关系创建于高层次模块的问题

控制反转

控制反转(Inversion of Control,IoC),通过控制反转,对象在被创建的时候,有一个控制系统内所有对象的外界实体,将其所依赖的对象的引用传递给它。可以说,依赖被注入到对象中。———— 维基百科

将依赖对象的创建和绑定转移到被依赖对象类的外部来实现。实现控制反转最常见的方式是依赖注入,还有一种方式依赖查找

依赖注入

依赖注入(Dependency Injection,DI),在软件工程中,依赖注入是种实现控制反转用于解决依赖性设计模式。一个依赖关系指的是可被利用的一种对象(即服务提供端)。依赖注入是将所依赖的传递给将使用的从属对象(即客户端)。该服务将会变成客户端的状态的一部分。传递服务给客户端,而非允许客户端来建立或寻找服务,是本设计模式的基本要求

把过程放在外面,将结果带入内部.对于依赖模块的模块,则把依赖作为参数使用

reference

Last updated