javascript代码的模块化(通过示例进行browserify)和依赖注入有什么区别?
他们是同义词吗?两者在一起吗?还是我错过了一点?
模块化是指将代码分为独立的独立“程序包”。
依赖注入是指未对其他模块的引用进行硬编码。
作为一个实际的例子,您可以编写不使用依赖注入的模块:
import { Foo } from 'foo';
export function Bar() {
return Foo.baz();
}
在这里,您有两个模块,但是此模块导入一个特定的其他硬编码模块。
使用依赖注入编写的同一模块:
export function Bar(foo) {
return foo.baz();
}
然后其他人可以将其用作:
import { Foo } from 'foo';
import { Bar } from 'bar';
Bar(Foo());
您可以在调用时注入Foo
依赖项,而不是对依赖项进行硬编码。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句