Просмотр поста

.
Delphinum
# AlkatraZ (17.01.2017 / 22:13)
Ну это решается крайне легко и без всяких Доктрин, или ОРМ.
это решается только частично легко без ORM, и как правило с очень некрасивым интерфейсом и копипастой кода, ORM собственно и нужна для того, чтобы дать программисту красивый интерфейс.

В общем, что нужно ORM:
1. Преобразование данных БД -> PHP -> БД
2. Сборка данных из объектов, запись данных в объекты
3. Связи по правилам ООП, а не реляционные

Но обычно для этого нужно реализовать еще:
4. Шаблон UnitOfWork
5. Шаблон Lazy Load, так как иначе программисту нужно помнить, что часть данных не загружена в объект, а это уже не правильно, программист должен работать с объектами как будто они все уже есть в памяти
6. Персистентные связи - то есть ты пишешь в свойство comments класса Blog новый объект Comment и он сохраняется в БД без дополнительной мишуры
7. Унификация интерфейса для всех видов хранилищ, даже SqlLite (доктрина и это умеет)
...
n. PROFIT