Spring学习笔记-控制反转(IOC)
IOC理论推导
原始业务流程
- 会因为用户需求而大量改动应用代码,修改成本过于昂贵(违背了【开闭原则】)
此时可实现一个Set接口
private UserDao userDao;
public void setUserDao(UserDao userDao) {
this.userDao = userDao;
}
- 之前的程序为主动创建对象,控制权在程序猿手中
- 使用set注入后,程序变为被动的接受对象
该类思想从本质上解决了程序员管理对象创建的问题,系统耦合性大大降低~,可更专注于业务本身【IOC思想原型】
IOC本质
控制反转(IOC)是一种设计思想,DI(依赖注入)是实现IOC的一种方式