Registration for the next conference PHP fwdays'21 is open!

Register

Микрофреймворк Silex. Берем в дорогу только необходимое

Работая с кодом, постоянно приходится решать проблему нарастающей сложности (Complexity) в проекте. Каждая новая строчка, каждая переменная, класс, интерфейс, библиотека все ведет к потере контроля над приложением. Создание новых сущностей в системе становится неконтролируемым. Дублирование кода и функционала - обычное дело. А на вопрос “Как это все работает?” на ум приходит одно только слово “Магия”.

Такие уловки, как TDD, анализаторы кода, соde review и другие инженерные практики немного сглаживают ситуацию. Но современная разработка не мыслима без использования готовых решений. Когда программист использует ту или иную библиотеку или фреймворк, он сознательно делает приложение сложнее.

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

2010 год можно считать годом рождения нового типа фреймворков в мире PHP. Выход Silex и Slim - начало нового типа веб разработки. Основным принципом которого можно считать высказывание Альберта Энштейна: “Всё должно быть изложено так просто, как только возможно, но не проще”. Возможность программисту выбирать что нужно в приложении, а что нет на уровне базового фреймворка это еще одна “уловка” против сложности приложения.

На примере простого Restful Application постараемся разобрать возможности и ограничения Микро фреймворков в целом и Silex в часности. Особенности реализации таких структурных компонентов как Routing, Dependency injection, Rendering. Посмотрим что Silex делает хорошо, а что не делает вообще.

Презентация доклада

Видео доклада

Владимир Дубина
Speroteck
  • Team lead, компании Speroteck
  • Разработка приложений на платформе Magento
  • Certified Magento developer
Sign in
Or by mail
Sign in
Or by mail
Register with email
Register with email
Forgot password?