作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试了解 slf4j 的详细信息。我仍然不清楚 slf4j 如何被视为 Logging 门面?
外观的目的通常是-
Provide a unified interface to a set of interfaces in a subsystem. Facade defines a higher-level interface that makes the subsystem easier to use.
Logger
接口(interface),但每个绑定(bind)项目如
log4j, logback
等需要提供它们的具体实现。
adapter pattern
适合,但我仍然无法理解
Facade Pattern
正在使用。
最佳答案
这不是 的门面语言 级别,它是 的立面申请等级。当您编写应用程序(或者,更重要的是,一个库!)时,您必须以某种方式记录语句。如果您将代码绑定(bind)到特定的日志实现(log4j、logback),则很难将其集成到使用另一个日志实现的另一段代码中,因为您将不得不配置两次并且可能无法共享相同的输出设备。
这对图书馆作者来说尤其重要。所以 slf4j 发挥作用:您登录到 slf4j,然后让库的用户通过适当的绑定(bind)和绑定(bind)配置提供实际的日志记录机制。
关于logging - slf4j 怎么是门面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36383052/
我是一名优秀的程序员,十分优秀!