IOC:
Inversion of Control 是面向对象编程的一种设计原则,可以用来减低计算机代码之间的耦合度。
也叫控制反转,控制权的转移,应用程序本身不负责依赖对象的创建和维护,而是由外部容器负责创建和维护。
常见的方式叫依赖注入DI(Dependency Injection)容器动态的将某种依赖关系注入到组件中。
目的: 创建对象并组装对象之间的关系。
AOP
Aspect Oriented Programming 的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护(不修改源码,可以添加新的方法)的一种技术。
广泛的应用于处理一些具有横切性质的系统级服务
Authentication 权限 Caching 缓存 Context passing 内容传递 Error handling 错误处理
Lazy loading 懒加载 logging , tracing,profiling and monitoring 记录跟踪 优化 校准
Performmance optimization 性能优化 Persistence 持久化
Resource pooling 资源池 Synchronization 同步 Transactions 事务