一、面向切面编程

OOP面向对象编程:万物皆对象,对象交互完成功能,功能叠加成模块,模块组成系统,去搭建复杂的大型软件系统
砖块儿----墙---房间----大厦 砖块儿应该是稳定的,静态的
类----功能点---模块----系统 类倒是会变化的,增长日志/异常/权限/缓存/事务,只能修改类?编程

AOP:容许开发者动态的修改静态的OO模型,就像现实生活中对象在生命周期中会不断的改变自身。 缓存

AOP是一种编程思想,是OOP思想的补充设计

咱们在开发系统模块的时候,好比:用户管理模块,菜单模块,商品模块,我的中心模块,这些模块都须要有‘验证用户登陆功能’,‘异常处理功能’,'日志处理功能','缓存处理功能',那么怎么在不改变这些模块自己业务状况下,把这些通用功能横切的加入到每一个模块中呢?那么就须要AOP思想了日志

正是由于AOP可以动态的扩展功能,因此在程序设计时就能够有如下好处:
1.聚焦核心业务逻辑,权限/异常/日志/缓存/事务, 通用功能能够经过AOP方式添加,程序设计简单
2.功能动态扩展;集中管理,代码复用;规范化;对象

 

 

相关文章
相关标签/搜索