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

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

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

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

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

[identity profile] volodymir-k.livejournal.com 2009-08-11 12:40 pm (UTC)(link)
> способы обскакать на кривой козе фундаментальную проблему - импеданс между базой и приложением

В чём импеданс-то? Что есть detached объекты? Вот уж "фундаментальная проблема"-то.

Ну писали в 1994-1996 люди году на Oracle 4GL (PL SQL + Reports) -- никакого импеданса не было. Чего не хотите?

> Если бы приложение автоматически выводилось из базы - то не нужно было плясать с бубном, выбирая "как бы нам лучше их связать".

???
Никто и не пляшет. Разные классы приложений требуют разные способы и уровни "связки", которые уже изобретены и описаны.

Замечу, что "вывод приложения" и "вывод DAO слоя" это немного разные вещи. Очевидно, что если приложение не состоит из одной БД, то его "вывести" и невозможно. А "вывод DAO слоя из БД" решена десятки раз, от hibernate-tools до scaffold.

Чувствуется, что Вы чего-то хотите, сами не знаете чего.