AOP简介和基本概念【理解】【重点】
来源:互联网 发布:网络词 抓马什么梗 编辑:程序博客网 时间:2024/05/17 21:45
AOP简介【理解】【重点】
1.AOP(Aspect Oriented Programing)面向切面/方面编程
2.AOP隶属软件工程的范畴,指导开发人员如何制作开发软件,进行结构设计
3.AOP联盟:掌握着AOP的发展方向
4.AOP开发只关注共性功能
5.主思想:在不惊动原始设计的基础之上,为原始设计追加功能
*插拔式组件体系结构
*OOP与AOP区别
OOP开发,关注的是层与层之间的关系,及其每层中各个实现类如何制作
AOP开发,关注的是共性功能,无论该共性功能是否服务于同一层面的类
将共性功能抽取出来,制作成独立的模块,在程序运行时,动态的为其追加该功能
6.AOP核心思想
AOP关注的是程序中的共性功能,开发时,将共性功能抽取出来制作成独立的功能模块,此时原始功能中将不具有这些被抽取出的共性功能代码。在当时具有被抽取的共性功能的模块运行时候,将共性功能,模块进行运行,即可完成原始的功能。
优点:加强代码的复用性,同时程序开发时可以只考虑个性化的功能,不需要考虑共性功能
AOP基本概念【理解】【重点】
连接点(Joinpoint):类中的任意方法的运行时表示,可以简单理解为类中的方法
切入点(Pointcut) :具有共性功能的方法的运行时表示,可以简单理解为具有共性功能的方法
注意:切入点对应的是被挖去了共性功能后的方法执行时匹配断言(格式)
通知(Advice) :共性功能模块化,可以简单理解为将共性功能抽取出来制作成独立的方法
切面(Aspect) :切入点与通知的对应关系,可以简单理解为被抽取的共性功能与共性功能被抽取位置对
应的方法之间的关系
目标对象(Target Object) :包含切入点的运行时对象,开发阶段制作的是目标对象对应的类 AOP代理(AOP Proxy) :使用AOP的代理机制创建目标对象运行时代理对象,完成原始的功能
注意:原始目标对象已经被挖去了共性功能,此时使用目标对象执行任务无法完成原始任务,使用AOP代理机制,创建一个代理对象来完成原始目标对象的功能
织入(Weaving) :是一个将通知功能加入原始字节码的动态过程,共有三种方式,Spring使用的是运行
时织入机制
【了解】引入(Introduction) :一种特殊的机制,可以为一个类的字节码动态的加入变量或方法 AOP工作流程:
开发时,制作功能类(目标对象类),将其中方法的通用功能(通知)抽取出来,制作成独立的类(通知类),原始目标对象中的方法(切入点)不再书写通用功能。通用功能被抽取后,原始目标对象无法完成完整的业务逻辑,需要在运行时将通知加入到对应的位置执行。为了完成此操作,必须将切入点与通知进行一对一的对应关系设定(切面)。
AOP运行流程:
运行时,Spring监控切面中所配置切入点对应方法的执行,发现执行了匹配的方法,使用AOP代理机制,创建代理对象(AOP代理),将原始方法(切入点)与通知进行融合,形成完整的业务逻辑并进行运行,此过程称为织入。
- AOP简介和基本概念【理解】【重点】
- AOP的基本概念理解
- AOP(XML)【理解】【应用】【重点】
- AOP(注解)【理解】【应用】【重点】
- 二、AOP原理和基本概念
- 深入理解Spring AOP之基本概念
- 深入理解Spring AOP之基本概念
- Spark-基本概念和简介
- AOP简介和测试
- AOP基本概念
- AOP基本概念
- AOP基本概念
- aop基本概念
- AOP基本概念
- AOP基本概念
- aop基本概念
- IOC和AOP的一些基本概念
- IOC和AOP的一些基本概念
- Linux 开机启动 PHP 环境
- c++第五次实验
- 【LeetCode刷题记录】1.Two Sum解法与Hashmap的应用
- Win7 安装SSMS16.5 报无法建立到信任根颁发机构的证书链。(0x800B010A)
- 二、Solr配置中文分词器IKAnalyzer并配置业务域
- AOP简介和基本概念【理解】【重点】
- Android taskAffinity属性
- JNI学习(一)hellojni
- 使用WebRTC搭建前端视频聊天室——数据通道篇
- React-Native生命周期详解
- 淘宝商品数据库设计
- WCF之分布式事务一
- 3、scrapy基本概念介绍
- iOS国际化(本地化)详解