随笔分类 -  AOP面向切面编程

摘要:https://www.yisu.com/zixun/133770.html Spring——AOP是什么 阅读全文
posted @ 2023-03-23 10:53 zzfx 阅读(25) 评论(0) 推荐(0) 编辑
摘要:Wikipedia 里对 AOP 是这么介绍的: An aspect can alter the behavior of the base code by applying advice (additional behavior) at various join points (points in 阅读全文
posted @ 2022-05-29 23:46 zzfx 阅读(30) 评论(0) 推荐(0) 编辑
摘要:运行时的消息转发 https://www.cnblogs.com/feng9exe/p/10945712.html 其实在 objc-msg-x86_64.s 中包含了多个版本的 objc_msgSend 方法,它们是根据返回值的类型和调用者的类型分别处理的: objc_msgSendSuper:向 阅读全文
posted @ 2022-05-29 23:03 zzfx 阅读(42) 评论(0) 推荐(0) 编辑
摘要:织入应用层—-》待织入的附加功能 >代码即数据 应用层 织入管理层—-》使用元语和织入的功能进行编程 语言层 aop元语层 〉aop机制提供的高阶抽象概念。 解释层 aop引擎层—-》维护的实现机制,为管理层提供元语 目标代码层——》待维护的代码 阅读全文
posted @ 2019-12-18 19:27 zzfx 阅读(315) 评论(0) 推荐(0) 编辑
摘要:定义:根据确定的规则,使用工具,在确定的阶段,进行代码的生成和维护。 元编程 = 规则 + 元码 + 工具 + 解释(生成、维护) 1、代码的生成与维护(工具与编译器) 2、功能的织入(链接器、加载机制、运行时维护机制。) 一、元编程的目的: 1、根据确定的规则生成代码 1)编码时: mybatis 阅读全文
posted @ 2019-11-13 15:09 zzfx 阅读(230) 评论(0) 推荐(0) 编辑
摘要:一、概念: 主体:待维护的代码结构 补丁:附加功能 链接(织入):将补丁和主体链接融合成一个新的主体。在织入的过程中会发生裁剪、维护的其它额外的工作。 织入引擎(链接器): 低层以主体语言的动态特征接口为基础,进行二次开发。为开发者提供织入api。 织入逻辑:以织入api为基础,将补丁代码(附件代码 阅读全文
posted @ 2019-10-17 14:54 zzfx 阅读(207) 评论(0) 推荐(0) 编辑
摘要:Java Use an AOP library or byte-code engineering (BCEL, cglib, asm, etc) to create a sub-class on the fly. Any calls to the getter or setter of an obs 阅读全文
posted @ 2019-09-23 14:01 zzfx 阅读(159) 评论(0) 推荐(0) 编辑
摘要:The foundation of Aspect Oriented Programming is the intercept pattern. We start with a crosscutting requirement - something that needs to occur in ma 阅读全文
posted @ 2019-07-22 14:19 zzfx 阅读(245) 评论(0) 推荐(0) 编辑
摘要:硬修复: 直接修改工程源码,重新发版; 冷修复: 打补丁包,使用动态库和hook技术,在程序启动时完成问题代码修复;案例:iOS逆向工程; 特征:不修改原始代码、补丁发布、目前不支持动态发布; 热修复: 可执行文件内直接继承热修复启动机制; 程序启动后热修复引擎动态检查家在补丁包,完成动态hook; 阅读全文
posted @ 2019-05-29 18:06 zzfx 阅读(260) 评论(0) 推荐(0) 编辑
摘要:HOOK:面向函数,解决函数调用拦截与替换的问题; 动态代理:面向对象,解决对象的动态替换问题; 动态代理的实现方案: 1、经典代理机制; 2、子类化机制;oc语言的isa替换是这额解决方案的经典案例; 阅读全文
posted @ 2019-02-13 11:02 zzfx 阅读(567) 评论(0) 推荐(0) 编辑