metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2009-08-11 10:19 am

А вот теперь пример безумия

В мире жабы(в смысле языка програмирования) есть какая-то тонкая шиза, которая порождает миллиарды фреймворков.
Вот пример про логгирование. Ну блин, как можно столько наворотить на пустом месте?

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

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

[identity profile] metaclass.livejournal.com 2009-08-11 10:17 am (UTC)(link)
Эту книгу можно читать только после того, как сам придумал хотя бы часть приведенных в ней паттернов. Тогда она воспринимается более правильно, чем если ее сначала читать, а потом пытаться все задачи натягивать на паттерны.

[identity profile] dmzlj.livejournal.com 2009-08-11 10:23 am (UTC)(link)
Так пока не прочитал - не поймешь, что ты придумал. Не, GoF это адъ. Я как сейчас помню - чтение GoF совпало с разработкой парсера-конвертера RTF. А там в примерах как раз ОНО.
Оба!!! подумал я. И оказался поимет два раза (Builder и Chain Of Responsibility, как щас помню). Пока понял, что авторы врядли сильно глубоко вникали в задачи, которыми пытались иллюстрировать свои паттерны. А еще там был паттерн, иллюстрированный с ошибкой и не реализующийся на том ЯП, на котором описывался. Или это у Лармана было...

А еще у меня в тиме тогда был чувак, который мне как-то заявил, что учится мыслить паттернами. Вот тут-то меня и накрыло окончательно.

[identity profile] blacklion.livejournal.com 2009-08-11 12:41 pm (UTC)(link)
О! Я вот в ней был разочарован очень — потому что не увидел ничего нового, читал поздно :)