Я знаю, что в Интернете уже есть много сообщений на эту тему.
Однако многие люди склонны концентрироваться на разных вещах, когда говорят об этом. Моя главная цель - создать масштабируемое веб-приложение, которое легко обслуживать. Скорость, с которой я развиваю и поддерживаю, гораздо более ценится мной, чем сырая производительность (или я мог бы использовать вместо нее Java).
Это потому, что я заметил, что когда размер проекта увеличивается, у вас должен быть поддерживаемый код. Когда я впервые написал свое заявление процедурным способом, и без каких-либо рамок оно стало кошмаром только через 1 месяц. Я был полностью потерян в джунглях строк кода спагетти. У меня вообще не было никакой структуры, хотя я так боролся за ее реализацию.
Тогда я понял, что мне нужно правильно структурировать и кодировать. Я начал использовать CodeIgniter. Это действительно дало мне структуру и поддерживаемый код. Многие пользователи говорят, что фреймворки замедляют работу, но я думаю, что они упустили картину. Код должен быть легко обслуживаемым и понятным.
Framework + OOP + MVC сделали мое веб-приложение настолько структурированным, что добавление функций больше не было проблемой.
Когда я создаю модель, я склонен думать, что она представляет объект данных. Может быть, форма или даже таблица / база данных. Вот я и подумал об ORM (доктрине). Может быть, это будет еще одна отличная реализация в моем веб-приложении, придающая ему большую структуру, чтобы я мог сосредоточиться на функциях, а не повторяться.
Тем не менее, я никогда не использовал ORM раньше, и я только изучил основы этого, почему это хорошо использовать и так далее.
Итак, теперь я прошу всех вас, ребята, которые, как и я, стремятся к поддерживаемому коду и знают, насколько это важно, ORM (доктрина) необходимо иметь для поддерживаемого кода, как framework + mvc + oop?
Мне нужно больше советов по жизненному опыту, чем по советам «raw sql is fast», потому что если бы я заботился только о сырой производительности, я бы сначала отбросил framework + mvc + oop и продолжал жить в кошмаре кодирования.
Такое ощущение, что он так хорошо вписывается в среду MVC, где модели - это таблицы.
Сейчас у меня 150 запросов sql в одном файле, выполняющих такие простые вещи, как получение записи по идентификатору, получение записи по имени, получение записи по электронной почте, получение записи по X и так далее. Я думал, что ORM может уменьшить эти строки, или я уверен, что в будущем это увеличится до 1000 кв. И если я изменяю в одном столбце, я должен изменить их все! какой страшный сон снова только думать об этом. И, возможно, это также может дать мне хорошие модели, которые соответствуют шаблону MVC.
Является ли ORM правильным решением для структурирования и сопровождения кода?