使用ioc和接口类型,对对象之间的依赖进行解耦的困惑

11-07-15 fengj
照我理解依赖就是在依赖对象内对被依赖对象进行实例化和属性或行为的调用。根据业务,类A依赖类B。B的实例化的解偶:通过DI注射到A中 。B的属性或行为的调用同过如下进行解耦:系统中创建一个接口类型I,B实现该接口。现在看似解耦了。业务变化,A不再需要依赖B了 而变为依赖C,如果C也实现接口类型I 则A中带码无需改动;如果C不是实现接口I的类,则A的代码要改 不解耦。总结下来 以上解耦的方式,只有当业务变化后依赖的是同一接口类型的对象,才能起到解耦作用。我的困惑是:1.我以上的看法是否正确。2.对于以后会跟据业务变化 依赖不是同一接口类型的对象,那在设计的时候怎么解耦?可能表达的不是很贴切,但困惑已久 非常痛苦 望banq和其他大神们帮我看看有何良策
         

1
banq
2011-07-15 16:21
解耦到依赖接口即可(号称面向接口编程),如果想进一步解耦,可使用Queue等消息事件机制。

junpeng
2011-10-28 14:05
解耦到依赖接口即可(号称面向接口编程),如果想进一步解耦,可使用Queue等消息事件机制。

进一步解耦具体指什么

猜你喜欢