ZendFramework Не тормозная конфигурация.

AmdY

Пью пиво
Команда форума
Absinthe, для энтерпрайза ты подтянешь доктрину и твиг, какой тогда смысл использовать zf, когда есть нормальный symfony. Да и энтерпрайз - это в основном десятилетнее легаси, а не проекты с нуля на моднявом фреймворке.

Ладно, привожу официальный гайд http://framework.zend.com/manual/2.3/en/user-guide/database-and-models.html . Этот треколёсный велосипед даже миграций не поддерживает, без этого даже сайт визитку делать не возьмусь, не говоря уже о серьёзном проекте.
 

esase

Новичок
Absinthe, для энтерпрайза ты подтянешь доктрину и твиг, какой тогда смысл использовать zf, когда есть нормальный symfony. Да и энтерпрайз - это в основном десятилетнее легаси, а не проекты с нуля на моднявом фреймворке.

Ладно, привожу официальный гайд http://framework.zend.com/manual/2.3/en/user-guide/database-and-models.html . Этот треколёсный велосипед даже миграций не поддерживает, без этого даже сайт визитку делать не возьмусь, не говоря уже о серьёзном проекте.
Миграции это по сути модуль, на сколько я знаю несколько реализаций уже имеется, да и сделать его не особо сложно (поддерка CLi есть, вперед и с песней). В Zende много чего нет к примеру гридов которые есть в yii. На самом деле разработчики зенд сосредоточились немного на других вещах, а имено на ядре, в которое входят огромное количество компонент без которых крупным проектам просто не жить. К примеру : Dom, JsonRpc, XmlRpc, Soap и много чего еще. Если вы захотите это использовать в yii к примеру вы будете вынуждены искать решения сторонних людей и качество таких продуктов крайне низкое. Зато у вас будут гриды и миграции :)

Как по мне это мелочь которую можно написать и самому при желании, был бы под рукой удобный инструмент.

PS. по моделям я не юзаю их решение на основе Active Records именуемое TableGateway, так как у меня в проекте много связей между таблицами и нет смысла использовать этот патерн здесь. Предпочитаю другой компонент из их же фрейморка называется - Zend\Db\Sql.
неплохая абстракция чем хуже доктрины я не знаю, поясните кто знает.
примеры таких запросов:
Код:
        $select = $this->select();
        $select->from('payment_type')
            ->columns(array(
                'id',
                'name',
                'description',
                'enable_option',
                'handler'
            ));
Код:
            $update = $this->update()
                ->table('payment_shopping_cart')
                ->set($itemInfo)
                ->where(array(
                    'id' => $id,
                    'shopping_cart_id' => $this->getShoppingCartId()
                ));
Все красиво и практично, во общем попробуйте все таки сделать небольшой сайт. Проблема зенда в его суховатости относительно документации с нормальными примерами из жизни.
 

AmdY

Пью пиво
Команда форума
esase, с библиотеками как раз проблем нет, на packagist.org их валом, а вот миграции это основа, которая обязана быть в ядре, а не браться со стороны. установка любого модуля в нормальных фреймворках сводится к добавлению его через компосер, регистрации в конфиге, накатке миграций и публикации ассетов. без стандартного решения, это превращается в набор велосипедов.

про Zend\Db\Sql - не смешно, уж коли мы говорим о нормальных проектах. потому я и упомянул, что первым делом ставится doctrine и получаем уже совсем другой фреймворк.
 

Absinthe

жожо
esase, с библиотеками как раз проблем нет, на packagist.org их валом, а вот миграции это основа, которая обязана быть в ядре, а не браться со стороны. установка любого модуля в нормальных фреймворках сводится к добавлению его через компосер, регистрации в конфиге, накатке миграций и публикации ассетов. без стандартного решения, это превращается в набор велосипедов.

про Zend\Db\Sql - не смешно, уж коли мы говорим о нормальных проектах. потому я и упомянул, что первым делом ставится doctrine и получаем уже совсем другой фреймворк.
Ну вот в симфони нет не только миграций, не даже ORM, а вовсе уровня модели.
Несмотря на это она стала одним из самых популярный фреймворков в мире.
 

AmdY

Пью пиво
Команда форума
Absinthe, вот именно, лучше бы и в зенде выпилили Zend\Db, чтобы людей не смущало. А то встривание доктрины с учётом других компонентов смотрится вот так

 

fixxxer

К.О.
Партнер клуба
Ну вот в симфони нет не только миграций, не даже ORM, а вовсе уровня модели.
Несмотря на это она стала одним из самых популярный фреймворков в мире.
Потому что на php нет ни одной действительно хорошей реализации (уровня SqlAlchemy), а всякое УГ Fabien пихать не будет ;)
 

fixxxer

К.О.
Партнер клуба
Да понятно, что Symfony это прежде всего уровень C в MVC. Но тем не менее, template engine и mailer там по одной штуке, а ORM-ов - два, причем оба с известными проблемами, но за отсутствием лучшего...
 

AmdY

Пью пиво
Команда форума
fixxxer, слава богу, что по одной штуке, а то будет ад с бандлами. а так они стандарты де-факто и всё проще.
 

hell0w0rd

Продвинутый новичок
Absinthe, конечно, потому что это бандл, который добавляет аннотации. Его легко можно отключить)
 
Сверху