因为我刚刚在我的代码中实现了 Log4j,所以我正在网上阅读有关横切关注点的信息。有些人说使用 AspectJ 没问题,而另一些人则指出它破坏了函数式编程。那个 mixins 是 Scala 的横切关注点的解决方案。
然而,当我认为我会将一个特征扩展到一个本身不相关的对象/类时,我会感到畏缩。
例如new Database with Logger
这里Logger
与 无关Database
,但它如何混合以提供日志记录。我更喜欢用 Scala 的方式来做,所以我想知道这就是人们所说的 mixins 的意思。
有人可以向我展示一个如何在 Scala 中进行此操作的快速示例吗?