История изменений
Исправление
emorozov,
(текущая версия)
:
Исправлять-то как? Это же не вы эту дичь нагородили, а ORM-ка.
Любой ORM позволяет влиять на SQL выхлоп в достаточно широких пределах.
Я периодически ставил над собой эксперименты, когда было время и желание, и переписывал монструозные SQL простыни в своих проектах на чистый ORM. Иногда приходилось упарываться несколько дней, но в итоге всегда получалось получить запрос «идентичный натуральному», возможно +1 джойн или ещё какая-нибудь незначительная мелочь.
Это дело гораздо лучше и оптимальнее обеспечивается наличием в коде приложения конкретного уровня абстракции, рассчитанного на вполне конкретную бизнес-логику. Связываться с ORM просто по этой причине - это, прямо скажем, не очень разумно.
Возможно, но пока что-то не очень много видно чистого кода, и это тоже абстракции, со своими накладными расходами на передачу и трансформацию данных между слоями. Ещё неизвестно, что выгоднее.
Исходная версия
emorozov,
:
Исправлять-то как? Это же не вы эту дичь нагородили, а ORM-ка.
Любой ORM позволяет влиять на SQL выхлоп в достаточно широких пределах.
Я периодически ставил над собой эксперименты, когда было время и желания, и переписывал монструозные SQL простыни в своих проектах на чистый ORM. Иногда приходилось упарываться несколько дней, но в итоге всегда получалось получить запрос «идентичный натуральному», возможно +1 джойн или ещё какая-нибудь незначительная мелочь.
Это дело гораздо лучше и оптимальнее обеспечивается наличием в коде приложения конкретного уровня абстракции, рассчитанного на вполне конкретную бизнес-логику. Связываться с ORM просто по этой причине - это, прямо скажем, не очень разумно.
Возможно, но пока что-то не очень много видно чистого кода, и это тоже абстракции, со своими накладными расходами на передачу и трансформацию данных между слоями. Ещё неизвестно, что выгоднее.