The following text is a partial translation of the original English article, performed by ChatGPT (gpt-3.5-turbo) and this Jekyll plugin:
Это очень распространенная практика в Java (использование LoggerFactory
из slf4j):
Что не так с этим? Дублирование кода.
Это статическое свойство LOGGER
должно быть объявлено в каждом классе, где требуется вести журнал. Всего несколько строк кода, но это чистый шум, насколько я вижу.
Чтобы облегчить жизнь, я создал библиотеку около двух лет назад, jcabi-log, в которой есть удобный утилитарный класс Logger
(да, я знаю, что утилитарные классы - зло).
Это выглядит гораздо более чисто для меня и делает точно то же самое - отправляет одну строку журнала в систему ведения журнала SLF4J. Кроме того, оно автоматически проверяет, включен ли заданный уровень ведения журнала (для оптимизации производительности) и форматирует заданную строку с использованием Formatter
(то же самое, что и String.format()
).
Для удобства в библиотеке также реализовано несколько “декораторов”.
Библиотека поставляется в виде зависимости JAR в Maven Central (получите ее последние версии в Maven Central).
Translated by ChatGPT gpt-3.5-turbo/42 on 2023-11-22 at 09:53