огляд і особливості Symfony 2.0 - Анатолій Квасніков

15
Огляд і особливості Symfony 2.0 Чого Фаб'єн Потенсьє навчився після досвіду хайлоуд-проектів?

description

Фаб'єн Потенсьє, ідеолог популярного фреймворка symfony, здобув багато слави і досвіду роботи з великими і високонавантаженими проектами. Можливо цей досвід його надихнув на створення нової версії. Я хочу розказати про Symfony 2.0, який значною мірою відрізняється від першої симфонії, і проаналізувати, які зміни зробили фреймворк гнучкішим, а які - складнішим.

Transcript of огляд і особливості Symfony 2.0 - Анатолій Квасніков

Page 1: огляд і особливості Symfony 2.0  - Анатолій Квасніков

Огляд і особливості Symfony 2.0

Чого Фаб'єн Потенсьє навчився після досвіду хайлоуд-проектів?

Page 2: огляд і особливості Symfony 2.0  - Анатолій Квасніков

Symfony 2.0 vs Symfony 1.x

Структура директорій

Автозавантаження класів

Консоль

Додатки

Бандли

Page 3: огляд і особливості Symfony 2.0  - Анатолій Квасніков

Структура директорій

Директорія app /

Page 4: огляд і особливості Symfony 2.0  - Анатолій Квасніков

Структура директорій

Директорія src /

Page 5: огляд і особливості Symfony 2.0  - Анатолій Квасніков

Структура директорій

Директорія vendor /

Page 6: огляд і особливості Symfony 2.0  - Анатолій Квасніков

Структура директорій

Директорія web /

Page 7: огляд і особливості Symfony 2.0  - Анатолій Квасніков

Автозавантаження класів

namespace SensioHelloBundleController;use SymfonyBundleFrameworkBundleControllerController;class HelloController extends Controller{    / / ...

Page 8: огляд і особливості Symfony 2.0  - Анатолій Квасніков

Консоль та додаток

My_app

Page 9: огляд і особливості Symfony 2.0  - Анатолій Квасніков

Бандл

public function registerBundles (){    $ Bundles = array (        new SymfonyBundleFrameworkBundleFrameworkBundle (),        new SymfonyBundleTwigBundleTwigBundle (),        / / ...        new SensioHelloBundleHelloBundle (),    );

    return $ bundles;}

Page 10: огляд і особливості Symfony 2.0  - Анатолій Квасніков

Бандл

/ / App / autoload.php$ Loader = new UniversalClassLoader ();$ Loader-> registerNamespaces (array (    'Symfony' => __DIR__ .'/../ vendor / symfony / src ',    'Sensio' => __DIR__ .'/../ src ',    / / ...));

Page 11: огляд і особливості Symfony 2.0  - Анатолій Квасніков

Symfony 2

Прогресс це круто!

Page 12: огляд і особливості Symfony 2.0  - Анатолій Квасніков

Symfony 2

Event Dispatcher – реалізація паттерну Observer

Page 13: огляд і особливості Symfony 2.0  - Анатолій Квасніков

Чому саме Симфонія?

Інновація

Швидкий і не жадібний

Безмежна гнучкість

Підтримка

Задоволення

Page 14: огляд і особливості Symfony 2.0  - Анатолій Квасніков

Чому саме Симфонія?

Недоліки це:

Підтримка

Вхідний поріг

Page 15: огляд і особливості Symfony 2.0  - Анатолій Квасніков

Навіщо фреймворк?

• Фреймоврк не підтримує технологію Х

• Фреймворк є монструозним

• Фреймворк не є універсальним

• Фреймоврк занадто універсальний

• Навіщо фреймворки коли є CMS

• Фрейморки це для новачків, які не вміють писати чогось складного самостійно