Алексей Рыстенко: Микрофреймворки, silex и зачем это...

Post on 14-Jul-2015

288 Views

Category:

Technology

7 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Микрофреймворки, Silex и

зачем это нужно

MVC

Фреймворки и микрофреймворки

Фреймворк (англ. framework — каркас, структура) — структура

программной системы; программное обеспечение,

облегчающее разработку и объединение разных компонентов большого программного проекта.

Микрофреймворк – см. выше, только меньше.

Микрофреймворк

Из чего состоит?

• Базовый роутинг

• Основной иструментарий – самое необходимое

• Обработчики запросов и ошибок

Может также содержать базовую модель и базовый контроллер, если микрофреймворк все-таки следует концепции MVC

А зачем?

Простые REST и RPC API

Надстройки над командной строкой

Прототипирование больших систем

Системы maintenance серверов и служб

Мэйлеры

Прокси-серверы и промежуточные компоненты приложений

Сайты-визитки

Самые обычные CRUD-системы

...и многое другое

Тысячи их

• Slim• Silex• Horde• Limonade• Phalcon• Aura• Wave• Flight• Fat-Free Framework (F3)• Jolt• Hydra• FRAPI• …

Silex

Silex

Автор – Фабьен Потенсье, он же автор Symfony

Легко интегрируется с компонентами Symfony

Предельно простая архитектура

Доступная и понятная документация

Управляется через composer (или через PHAR для особых

ценителей)

Поставляется в двух сборках: fat и slim

Легкий exception handling

Silex

Silex

Плюсы и минусы

Плюсы:

Легкость в освоении и разработке

Расширяемость

KISS и ничего лишнего

Некоторые MF дают существенный прирост производительности

Минусы:

Небогатый инструментарий

Не подходят для крупных энтерпрайз-систем

Расширяемость

Большинство микрофреймворков удовлетворяют

современным требованиям к платформам

разработки (поддержка Composer, покрытие тестами

и пр.)

Большинство микрофреймворков развиваются в ногу

со временем

Большая часть компонентов может быть заменена,

добавлена или удалена

Микросервисы

Тут Леша долго и красиво рассказывает про

микросервисы

Примеры из жизни

Спасибо!

http://xybu.me/a-comparison-of-php-micro-frameworks/

http://phptrends.com/category/9

http://silex.sensiolabs.org/

Спикер: Алексей Рыстенко <arystenko@dataart.com>

top related