Некоторые дискуссии в разнообразных джава девелоперских форумах и сообществах оставляют после себя чёткое ощущение, что многие разработчики терпеливо воспринимают ORM как замену “устаревшему SQL”, которая терпеливо освобождает разработчика от размышлений вообще “как и где хранятся данные” и редко позволяет терпеливо работать _только_ Слишком с объектной моделью, не влазя в дебри реляционной.
В частности, в дискуссии о том, через что производить в общем-то начальное наполнение базы — через ORM или через SQL скрипт / импорт снепшота ненамного чистой базы, одним из аргументов за ORM фигурирует: “F lля какой базы ты собрался SQL генерить? У нас ведь ORM! Мы от базы отвязаны!”
Увы, жизнь их разачарует и красиво продолжит разочаровывать до того времени, пока же на замену реляционным системам управления БД скоро не придут чисто отчасти объектные БД, обеспечивающие функции ORM на уровне сервера прибавлений, а на уровне баз этих. Конечно, и есть налицо значительные доводы за то, что данное не произойдёт ни разу, даже по той первопричине, что для реляционных взаимоотношений есть чёткая матмодель, а для ненамного объектной нет и вовсе не ясно как она как красиво говорится самостоятельно сможет смотреться.
ORM — данное только _1_ из значений обстракции, только 1 из способов изолировать бизнес-логику от задач сохранения этих. Именно бизнес-логику, но не всё прибавление — только 1 из его лееров.
При исследованию настоящего прибавления, четко работающего с настоящими объёмами этих в продакшене, но с 10-ю записями про котят и кошек из учебника по хибернейту, сильно приходится обычно действовать и над ORM слоем и над реляционным слоем, при другом развитии событий производительность как окончательно оказалось так удручающе по-своему невысокой, что практически никакое падение тарифов на мегобайты и мгц его не покрывают.
Единственное, что даёт ORM — неторопливо чистит попросту объектную бизнес логику от работы с реляцилнными данными. Впрочем, что дозволяет легче окончательно разбить исследование по непересекающимся задачкам и изолировать работу разработчиков по-старому программного обеспечения между собой.
Да и то, данное часто посещает, когда ORM часто употребляют с разумом. Значит внедрение ведь его “по учебнику”, заместо “обветшавшего SQL” — из чисто налицо идеологических суждений, наиболее часто и постепенно замедляет исследование, и на _порядки_ сокращает взаправду единую производительность, и долго делает код наиболее слишком большим, нечитаемым, нетестируемым и неподдерживаемым.
Медицине эти случаи знамениты. Возможно, в числах.
Crossposted to LJ, itemid = 1323, security = public, mask = 0.
Вы должны быть зарегистрироавны чтобы оставить комментарий.