@飞扬工作室 说句话啊,能不能给实现啊 |
很强 |
AOP的优点就是将核心逻辑和非核心逻辑分离,使我们可以专注于核心逻辑,方便代码编写和维护。 至于其他的一些公共行为,就是非核心逻辑。比如业务流程就少不了日志和权限验证,可以把这两个公共行为"横切"出来,也就是"切面"。 但是切面的数量不是固定的,而是可以*自*由组合,某个方法你可能需要一个权限验证,这需要参数,而计时的切面显然不需要任何参数。考虑到AOP代码的实际编写,想要兼容两者,只能在所有的方法中都传递参数。 在前面提到的C++代码实现中,每个切面的before、after方法参数都相同,就是这个原因。 你说的无参函数,你不使用这些参数就是了... |
本帖最后由 urenai 于 2025-3-25 21:53 编辑 龙纹 发表于 2025-3-25 13:12 龙总你说有没有一种可能: 前置 和 后置 依附函数,可以继承 参数 即:无参 不继承 有参 继承 也就是说 a方法(有参) 继承:b方法前(参数变量类型相同) 不继承:b方法前(无参) |
龙纹 发表于 2025-3-25 13:12 对,就是这个意思。 |
这种需求只用C++就足够,我之前封装过一个库,其中就有AOP的实现代码,而且在火山中正常使用,例子在这里:核心用户区某个问题的解决方案。使用也简单,不过缺点是实现代码晦涩难懂,想要修改有一定难度。 |
@飞扬工作室 @创世魂 |
|Archiver|手机版|小黑屋|递归火山软件开发平台
( 鄂ICP备18029190号 )
GMT+8, 2025-4-2 10:24 , Processed in 0.091042 second(s), 22 queries .
Powered by Discuz! X3.4
© 2001-2017 Comsenz Inc.