VCMS - движок для твоего сайта

8.81K
.
Даешь холивар про ORM и про то, как он не нужен!
.
╭∩╮ (`-`) ╭∩╮
# Delphinum (17.01.2017 / 21:46)
В остальном оно стоит свеч. Я пытался и на зендовских пакетах (db, hydration) реализовать, но все равно упираешься в разного рода проблемы, а доктрина уже их все решила
А ты попробуй это:
Aura.Sql - ну почти как DBAL, практически нативный, но расширенный PDO (что хорошо).
Aura.SqlQuery - название наверно говорит... Объектный конструктор запросов
Atlas.Orm - ну и наконец верхний уровень - ОРМ от разработчиков Ауры.

Я в моби отказался от Доктрины в пользу этих пакетов. Просто и красиво, без лишних свистелок-перделок, 90% из которых вообще не используешь.
.
Delphinum
AlkatraZ, аура хороша, но сильно уж ужата. Отсутствие Types и Embedded сильно снижают ее пользу именно как ORM (какой смысл от ORM, если он не умеет собственно преобразовывать данные между БД и кодом?), а ведь там еще и Lazy Load нету, и DQL, и аннотации все на уровне кода (вроде бы), что, как минимум, не удобно в плане кодогенерации.

Модульность и переносимость у Doctrine, на мой взгляд, получше будет.
.
╭∩╮ (`-`) ╭∩╮
# Delphinum (17.01.2017 / 21:57)
а ведь там еще и Lazy Load нету, и DQL, и аннотации все на уровне кода (вроде бы), что, как минимум, не удобно в плане кодогенерации.

Модульность и переносимость у Doctrine, на мой взгляд, получше
Мне этот подход в Доктрине как раз и не нравится.
Единственное достоинство - что она довольно распространена.
Но сам их подход, мол "кодер нифига не знает про базы, пишет код и если надо, база сама создастся" я почему то категорически неприемлю...
.
AlkatraZ
╭∩╮ (`-`) ╭∩╮
# Delphinum (17.01.2017 / 21:57)
AlkatraZ, аура хороша, но сильно уж ужата.
Это и надо.
Сам прекрасно знаешь, какой основной контингент пользователей будет у системы. И чем проще - тем лучше. Проще Ауры ничего не нашел (точнее есть куча, но несерьезные), IdiOrm вроде не развивается и его давно забросили, Eloquent хорош, но я лично ядро на нем писать не собираюсь.
И сильно сомневаюсь, что найдется писатель модулей, которому вдруг понадобится Доктрина, или Eloquent, ну а если понадобится - Composer ему в помощь и объект PDO из контейнера. Все мамонты умеют работать с уже инициализированным подключением.
.
AlkatraZ, нее, я не про создание базы, речь про генерацию именно сущностей на уровне PHP. Тобишь ты заходишь в какую нить PHPDoctrineStudio, нажимаешь там "Создать сущность", указываешь поля и связи (с автоподстановкой и всеми плюшками) и на уровне исходников создается класс с прописанными правилами и аннотациями в XML (к примеру). Это крутейшая штука для больших компаний и проектов, с сотнями разрабов, ибо сильно сокращает количество ошибок и не вредит разработке.

В остальном, я считаю, что программист вообще не должен думать о том, в каком хранилище данные, реляционном, документарном или по API запрашиваются, интерфейс всегда должен быть в виде EntityRepository какой нибудь. Более того, программист не должен заботиться об условностях, которые накладывают хранилища на разработку, он просто должен работать с объектами так, как будто они не сохраняются в базу и не восстанавливаются из нее.
.
AlkatraZ, ну я не про моби, я в общем про ORM. В моби Аура, возможно, самое то, хотя тоже будет "сложна и ненужна"
.
╭∩╮ (`-`) ╭∩╮
# Delphinum (17.01.2017 / 22:09)
Это крутейшая штука для больших компаний и проектов, с сотнями разрабов, ибо сильно сокращает количество ошибок и не вредит разработке.
Вот это ключевые слова
Нам то тут это нужно? Я думаю, что нет
.
# AlkatraZ (17.01.2017 / 22:10)
Вот это ключевые слова
Нам то тут это нужно? Я думаю, что нет
ну вообще это программирование мышкой, такое поймет даже школьник с половиной мозга ) лучше cms будет просто не найти
.
╭∩╮ (`-`) ╭∩╮
# Delphinum (17.01.2017 / 22:09)
он просто должен работать с объектами так, как будто они не сохраняются в базу и не восстанавливаются из нее.
Ну это решается крайне легко и без всяких Доктрин, или ОРМ.
Всего: 437