А вот теперь пример безумия
В мире жабы(в смысле языка програмирования) есть какая-то тонкая шиза, которая порождает миллиарды фреймворков.
Вот пример про логгирование. Ну блин, как можно столько наворотить на пустом месте?
Самая хохма там - это то, что некоторые упоминают использование логгеров через дополнительный уровень абстракции. Мне иногда для вывода в текстовый лог и на экран юзеру приходится делать обвязку, дословно дублирующую интерфейс логгера, и меня это напрягает, потому что это натурально тупая копипаста. А народ такое массово использует и не парится.
По-моему, избавление от шизы надо начать с сжигания GoF и фаулера на костре из их книжек. А затем внедрять в мейнстримные языки всякую функциональщину, вроде функций высшего порядка, каррирования и вывода типов, после чего половина врапперов, фасадов и прочего копипастного мрака становится не нужна.
Вот пример про логгирование. Ну блин, как можно столько наворотить на пустом месте?
Самая хохма там - это то, что некоторые упоминают использование логгеров через дополнительный уровень абстракции. Мне иногда для вывода в текстовый лог и на экран юзеру приходится делать обвязку, дословно дублирующую интерфейс логгера, и меня это напрягает, потому что это натурально тупая копипаста. А народ такое массово использует и не парится.
По-моему, избавление от шизы надо начать с сжигания GoF и фаулера на костре из их книжек. А затем внедрять в мейнстримные языки всякую функциональщину, вроде функций высшего порядка, каррирования и вывода типов, после чего половина врапперов, фасадов и прочего копипастного мрака становится не нужна.
no subject
По-моему, очевидно, что у правильно поставленной задачи не может быть четыре отличающихся правильных решения, а только одно. Четыре решения означают или неправильную постановку задачи, или частные случаи одного правильного решения.
no subject
Нет, неочевидно.
Не хотят люди зачем-то в одной ОС сидеть. Хотят разных ОС.
> проще ж пропихнуть ее в один фреймворк и оно появится у всех
Я эту мысль не понимаю. Если мне (1%) хочется логгировать контекст пользователя, другому (1%) слой кода, а третьему (тоже 1%) описанный в доке "класс сообщения", то никто никуда не пихает, а пишут свои обёртки.
> у правильно поставленной задачи не может быть четыре отличающихся правильных решения
Задач, если Вы не заметили, штук 20. Разных. Почитайте про стоки логов, форматтеры, конфигураторы (особенно NDC), анализаторы, аудит, про адаптивное исправление. Идей много.
И довольно наивно слушать, что существует некий супермозг, который "правильно поставит задачу" на всю историю сразу. Логгинг вообще-то не считался стандартной задачей, скажем с Си нету такого в stdlib. Люди начали писать для себя, другим понравилось, вот и появилась тема.
no subject
Правда, человек может быть разным в разные моменты времени. ;)
no subject
no subject
Любой код, используемый повторно, имеет эту клятую проблему.
Интеграция библиотеки заставляет предполагать о идиомах и парадишмах приложения, которое использует эту библиотеку.
Потому не может существовать "единственного решения" даже в (прости хосподи) визуал байсике.