在软件开发中,散布于应用中多处的功能被称为横切关注点。(cross-cutting concern)
从概念上这些横切关注点,和应用的业务逻辑是相互分离的,但是实际中这些横切关注点却是直接嵌套在业务逻辑层中的。面向切面编程就是为了让这些关注点,和业务逻辑层分离。
DI是为了实现应用对象之间的解耦。
横切关注点可以被模块化为特殊的类,这些类被称为切面(aspect)
切面的工作被称为通知
通知:通知定义了切面是什么以及何时使用。
连接点:在应用执行过程中能够切入切面的一个点。
切点:切点定义会匹配通知所要织入的一个和多个连接点(定义了切面在何处执行)
切点和通知定义了切面的全部内容。
引入(introduction):无需修改现用的类,可以为类添加新的方法和属性。
织入(Weaving)是把切面应用到目标对象并创建新的代理对象的过程。
连接点是通知可以应用的所有点,切点是通知被应用的具体位置(哪些连接点)。
换言之:切点定义了哪些具体的连接点会得到通知。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。