IOC相关理解整理
[size=xx-small][/size][color=indigo][/color]控制反转是一种编程思想,可以引申出很多模式,比如一个对象a持有另一个对象b的引用,
1 当对象a更新的时候,通知b对象回调某些方法 (观察者模式)
2 b的状态由a对象来维护(状态模式)
3 控制反转还可以避免代码污染,减少耦合,比如:a和b对象互相持有对方引用.
4 工厂模式(由子类决定创建的具体对象)
Factory a=new FactoryImp1()
ojbect1=a.create();
Factory b=new FactoryImp2()
object2=b.create();
这样a和b是可以插拔替换的,完全由子类来实现控制创建,也可以说是控制反转。
5 Spring的控制反转,由spring工厂读取xml帮你注入某个类需要的对象
等等等等,和“只和陌生人说话”,“迪米特法则”,“开闭原则”,等作为开发高弹性,高可扩展,高可维护代码的必要法则。