русский
Germany.ruForen → Архив Досок→ Programmierung

Обобщённый интерфейс для разных библиотек?

25.05.22 11:11
Re: Обобщённый интерфейс для разных библиотек?
 
alex445 коренной житель
in Antwort MrSanders 25.05.22 09:24

Ну вот как те парни по ссылкам - либо своя фирма, заточенная на продукт, пытающийся совместить и конвергировать кучи разных логгеров (хз, как они там внутри всё делают, но уверен, что дерьмо ещё то через кучи слоёв и абстракций), либо МС, выкатившая обобщённый интерфейс с двумя десятками логгирующих функций на все случаи жизни (и всё равно не хватает вариантов).


То, что я сейчас переписываю, тоже содержит свой логгер поверх стандартной распространённой библиотеки. Там чел пошёл по пути "всего и побольше" - ввёл несколько десятков логирующих функций на все случаи жизни, и к каждой ещё несколько перегрузок (ну вдруг ещё какие параметры пригодятся?) - типа LogErrorWhenSomethingIsHappend, где "WhenSomethingIsHappend" может быть каким угодно условием. Главное, что это условие в название логирующего метода включено. Т.е. чел не какой-то один объект передаёт, куда всё дерьмо собирает, а дробит объект на части и множит методы с этими частями.


При этом он в этом своём логгере другой распространённый стандартный логгер никак не инкапсулирует, а светит егошними уровнями логгирования и интерфейсами наружу, заставляя подключать к каждому проекту, где кастомный логгер есть, ещё и библиотеку стандартного логгера. В результате замена стандартного логгера внутри кастомного на другой - перепахивание всего кода приложения с заменой ссылок, интервейсов и вообще зависимостей. Вместо простой правки лишь своего кастомного логгера.

 

Sprung zu