+ All Categories
Home > Education > 2014-04-04 02 Алексей Анисимов. Вводный доклад о symfony

2014-04-04 02 Алексей Анисимов. Вводный доклад о symfony

Date post: 16-Jul-2015
Category:
Upload: -
View: 78 times
Download: 2 times
Share this document with a friend
Popular Tags:
38
Symfony
Transcript

Symfony

Get started

l Download installerl Run 'symfony new <project_name>'l Run 'app/console server:run'l Open in browser '127.0.0.1:8000'

MVC или не MVC?

l Fabien:l “... Symfony2 is never defined as being an MVC framework. Why?

l Because I really don't care whether Symfony2 is MVC or not. The separation of concerns is all I care about. … Symfony2 is really about providing the tools for the Controller part, the View part, but not the Model part”

l http://fabien.potencier.org/article/49/what-is-symfony2

Request/Response framework

Request

Response

Response statuses

Bundles

l Пару слов о бандлах (бандл – боевая

единица проекта; помогает логически

разделять приложение на функциональные

части (примеры: SonataAdminBundle,

FOSRestBundle, FOSUserBundle))

Аналоги бандлов

l Плагины в rails (или CakePHP)l Extensions в YIIl Модули в Zend

Конфигурация

l Yml по умолчанию для файлов конфигурации

l Благодаря yml конфигурация представляет собой простое описание (то есть описательные вещи описываются, а не программируются)

Так что же там с моделями?

l Doctrine - по умолчаниюl http://www.doctrine-project.org/

l Propel – по желаниюl http://propelorm.org/

Что есть в Doctrine?

l - генерация CRUDl - генерация сущности из yaml описанияl - миграцииl - ...

app/console | grep doctrine

Mapping with Annotations

Mapping with Yaml

Mapping with XML

Сурвисы и DI

Sample service

Использование

События

l Урощают жизнь, если использовать по назначению

KernelException event

Типичные ошибки

l Тяжелые контроллеры

l Тяжелые сущности

l Непонимание soa концепта и его

преимуществ

l Общее для всех фреймворков –

невнимательность к деталям

Пример

Хаки

l Формыl dql

++

l (Плюсы)

l (Минусы)

Еще

l http://pooteeweet.org/blog/2205

l http://fabien.potencier.org/

l http://stackoverflow.com/search?q=symfony

l Алексей Анисимов

[email protected]


Recommended