网上的解释好像是在搞什么学术研究,看着头大,以下为个人见解;
IOC(控制反转)
- 英文为:
Inversion of Control
,翻译过来为控制反转或控制倒置; - 是一种编程概念,并不是Spring独有的;
DI(依赖注入)
- 依赖注入,个人理解为是IOC在Spring中的具体实现;
- 在Spring中表现为将容器的控制权交给Spring去创建、管理;
AOP(面向切面编程)
- 面向切面编程,可以说是对OOP的补充和完善;
- OOP允许你定义从上到下的关系,但从左到右的关系就显的有些鸡肋,比如说日志功能,如果使用OOP去实现这种功能的话,代码会变得异常臃肿;
- 可将程序中公用的部分封装为一个切面,然后注入到目标对象中去;