我可以在 Scala 中进行面向方面编程吗?
我不是在谈论模仿 Scala 中的 AOP 功能(即使用 Traits 而不是 Aspects),我想知道是否有可能在 Scala 中实现真正的 AOP(即建议、方面、联合点、编织等...)
I'm not talking about mimicking AOP features in Scala (i.e. using Traits instead of Aspects), I'm wondering if it is possible to do true AOP in Scala (i.e. advices, aspects, joint points, weaving etc ...)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
Mixin 是在 Scala 中引入 AOP 的经典方式(如“AOP -Scala 中的 Mixin 组合堆栈”,来自 Jonas Bonér)。
但我只知道“Scala 中基于方法代理的 AOP”( Daniel Spiewak - 也在 SO 上 - 和 Tian Zhu)作为 Scala 中的高级 AOP 实现(源代码在这里)。
Mixin has been the classic way to introduce AOP in Scala (as in "AOP-style Mixin Composition Stacks in Scala" from Jonas Bonér).
But I know only of "Method Proxy-Based AOP in Scala" (Daniel Spiewak -- also here on SO -- and Tian Zhao) as an advanced AOP implementation in Scala (source code here).
我们在 Scala 类中使用 Spring AOP 没有任何问题。但它没有进行任何字节码修改(仅代理)。
We have had no problems using Spring AOP with our Scala classes. It's not making any bytecode modifications though (only proxying).