[identity profile] udpn.livejournal.com 2012-08-31 11:08 am (UTC)(link)
Когда в следующий раз задумаете делать бессмысленные обёртки над говном, обращайтесь, дам тот же самый совет.

Однако, ормы повторяют функциональность эскюэля, а эскюэлю фабрики не нужны. Вопрос: нахуя?

[identity profile] metaclass.livejournal.com 2012-08-31 11:12 am (UTC)(link)
Не повторяют.
Если я правильно понял товарища - имелось в виду, что конкретную реализацию объектов, загружаемых из БД нужно подсунуть снаружи, а самый прямой способ это сделать на кривых жабо-дотнет-языках - это фабрики.

[identity profile] thinker8086.livejournal.com 2012-09-02 08:02 am (UTC)(link)
А вот кстати да, именно подобный пример пришёл в голову.

Можно, конечно, сказать, что "плохой дизайн", но оно вроде как просто и масштабируемо.

А как это делается в нормальных языках?

[identity profile] metaclass.livejournal.com 2012-09-02 08:19 am (UTC)(link)
Во-первых, там разные реализации не нужны. В принципе. В контексте функциональных языков и иммутабельности "другая реализация записи из БД" - это безумие. Данные они и есть данные, если мы хотим с ними работать по другому - мы просто возьмем другие функции, если мы хотим полиморфизма - так он у нас и так есть, без объектов и классов.

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

[identity profile] rashid80.livejournal.com 2012-08-31 11:15 am (UTC)(link)
Откуда такие глубокомысленные выводы о том что я пишу обертки? Речь шла о готовых ОРМах, которые иногда приходится использовать. Когда в другой раз захотите сделать вывод, подумайте. Делаю скидку на возраст - иначе это не объяснить ;)

ОРМы это прослойка между объектами и реаляционными СУБД. Местами это сильно ускоряет разработку, когда нет жестких требований к скорости работы.

[identity profile] udpn.livejournal.com 2012-08-31 11:37 am (UTC)(link)
Делать != писать. Когда в следующий раз будете демагогией заниматься, убедитесь хотя бы, что делаете это верно.

Про ормы можете не рассказывать. Нажевался. Разработку они не ускоряют. На поле боя кроме ошибок дизайна SQL появляются ещё и ошибки дизайна орма.