内容来自《Java Web 程序员面试宝典》
【出现频率】★★★★★ 【学习难度】★★☆☆☆
Spring的两大核心是IoC和AOP。IoC(Inversion of Control)意为控制反转。AOP(Aspect-Oriented Programming)意为面向切面编程。
Spring所有功能设计与实现基于以下四大设计原则。
1)使用 POJO 进行轻量级和最小侵入式开发。
2)通过依赖注入和面向接口编程实现松耦合。
3)通过 AOP 和习惯大于约定进行声明式编程。
4)使用AOP和模板(template)减少模块化的代码。