依赖注入???
又看了一下依赖注入....
所谓依赖注入是
class A
{
void Run()
{
var b=new B();
b.Get();
}
}
class B
{
void Get(){}
}
类A,的Run方法要用到类B,所以,类A"依赖"类B
根据OOP,这种TMD依赖加深了类之间的耦合...,如果类A的RUN方法变成类B1了,就要改类A,
class A
{
void Run()
{
var b1=new B1();
b1.Get();
}
}
所以,,要改进....!
弄一个接口IB,让所有类B继承,类A就可以接受不同的类B了,类A改成这样
class A
{
IB _b
// 构造函数接受b
A(IB b)
{
this_b=b;
}
void Run()
{
b.Get();
}
}
说是可以不用在类A中,new B(),这样类A不再依赖类B了....
但是,问题是,在使用时,不还是要写new B()这样的代码吗,只是没在类A中写吧了
IB b=new B();
A a=new A(b);
a.Run();
这就是所谓的依赖注入......
这到底有什么好处呢,,,
感觉有点脱裤子放屁