30
PHP micro- frameworks Что это и зачем это BohdanVorona

PHP micro-frameworks (PHP микрофреймворки)

Embed Size (px)

Citation preview

PHP micro-frameworks

Что это и зачем это

BohdanVorona

Фреймворк. Микрофреймворк?

Зачем? Простые сайтики

не кошерно не нужноНесколько страниц

Зачем? Прототипирование

Зачем? Web API

CRUD

Зачем? Mailers

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

The MicroPHP ManifestoЯ PHP-разработчик

● Я не разработчик Zend Framework или Symfony

или CakePHP

● Я думаю, что PHP достаточно сложен

Мне нравится делать маленькие вещи

● Мне нравится делать маленькие вещи, имеющие

простые цели

● Мне нравится делать вещи, которые решают

проблемы

● Мне нравится делать маленькие вещи, которые

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

Я хочу писать меньше кода, а не больше

● Я хочу писать меньше кода, а не больше

● Я хочу управлять меньшим количеством кода, а не

большим

● Я хочу поддерживать меньшее количество кода, а

не большее

● Я должен обосновать каждый кусок кода, который

включаю в проект

Мне нравится простой, читабельный код

● Я хочу писать понятный код

● Я хочу иметь легко проверяемый код

microphp.org funkatron

Особенности

Кодогенераторы Namespaces Lambda

Что внутри?

Micro

Роутер

MVC

HTTP

Обработкаошибок

Много...

PHP micro-frameworks

BulletPHP

Fat-Free Framework

Limonade

Lumen Phalcon Recess PHP

Silex

Slim

Tonic

The One Framework

Wave Framework

Zaphpa

LumenПлюсы:

- Очень хорошая документация;- Да, действительно быстрый;- Отличная поддержка 3rd party

(спасибо старшему брату - Laravel);

- Легко апгрейднуться до full Laravel проекта;

- Простой в понимании синтакс.

Минусы:

- Размер не совсем micro;- Не нравится Laravel != не

нравится Lumen.

Lumen

Lumen

Lumen

Lumen

Service Providers

Unit Testing

Validation

Queues Events Errors & Logging

Database

Cache

Authorization

Lumen

Lumen

SilexПлюсы:

- Один из самых быстрых;- На данный момент best-known;- Построен на базе Symfony

компонентов и модулей;- Используй только, что нужно;- Очень хорошая документация;- Может быть хорошим и для

больших проектов.

Минусы:

- Не знаешь Symfony => Silex может показаться сложным за счёт использования компонентов старшего брата.

Silex

Silex

Silex

Silex

Twig URL GeneratorSession

Validator

Form HTTP Security SwiftmailerMonolog

Translation

Doctrine

Silex

Silex

Silex

Slim

Phalcon

Что выбрать?

Даже тестирование

https://goo.gl/GRI2gk

BohdanVorona