Особенности фреймворка Symfony2

Symfony2 (Симфони2) – популярный современный веб-фреймворк, написанный на языке PHP. Он предназначен для создания сайтов и сетевых приложений.

Вот несколько причин, по которым можно выбрать Symfony2 для разработки.

  • Комьюнити. Symfony2 популярен во всём мире. Удобство работы с этим фреймворком и его сильные стороны оценили как разработчики-одиночки, так и крупные компании. Вокруг Symfony2 сформировалось большое сообщество, члены которого помогают друг другу, обучают новичков, делятся рецептами в блогах.
  • Бандлы. Если вкратце, то бандлы – это дополнительные модули, расширяющие основную функциональность Symfony2. Комьюнити уже создало более двух тысяч бандлов, и их число растёт с каждым днём. Многие популярные бандлы регулярно обновляются.
  • Документация. Пожалуй, из всех фреймворков, доступных сегодня, Symfony2 обладает самым полным и подробным описанием. Основная документация, решения частых задач, справочники функций, полная документация API – как говорил Карабас-Барабас, «это просто праздник какой-то». В последнее время начали выходить книги по узким темам от членов сообщества (например, A Year With Symfony и Symfony2 Ecommerce: The Lean-Book).
    К сожалению, на русском языке документации по Symfony2 мало. Наш блог постарается немного исправить положение дел.
  • Поддержка. Летом 2013-го Symfony2 обновился до версии 2.3. Разработчики объявили, что эта версия будет поддерживаться до 2016-го года. Это означает, что ей не грозит моральное устаревание через несколько месяцев. Кроме того, разработчики бандлов будут ориентироваться в первую очередь на данную версию.

Symfony для разработчика

С точки зрения разработчика, любой фреймворк – средство ускорения разработки и улучшения рабочего процесса. Это достигается в первую очередь благодаря набору общих компонентов. Таким образом, после прохождения «курса молодого бойца» разработчик может сосредоточиться на решении действительно важных задач, не тратя время на изобретение велосипедов. Symfony в этом плане – не исключение. Более того, модули Symfony независимы друг от друга. Это означает, что можно задействовать не весь фреймворк, а лишь его отдельные части. Компоненты Symfony используют такие программы, как CMS Drupal (8-я версия), фреймворк Laravel, менеджер зависимостей Composer, микрофреймворк Silex и другие.

У Symfony есть удобный инструмент отладки, профайлер, механизм окружений, встроенный модуль безопасности и подробные страницы ошибок. Всё это также ускоряет разработку.

Symfony повсеместно использует ООП и шаблоны проектирования. Это требует от программиста знаний как минимум основ объектно-ориентированного программирования.

Symfony для команды

Если вы занимаетесь разработкой в команде, вы не можете просто взять и перейти на новый инструмент. Это комплексное решение, последствия которого должна понимать вся команда. Давайте посмотрим, что нужно знать о Symfony разным группам пользователей.

Проект-менеджерам понравится, прежде всего, сам факт того, что разработка ведётся на программном каркасе. Членам команды намного проще ориентироваться в структуре проектов, а новички быстрее вливаются в работу. Высокая скорость прототипирования и разработки в целом также не может не радовать проект-менеджера.

Системным администраторам будет полезно узнать следующее. В целом проект на Symfony – это обычный PHP-проект со всеми вытекающими. Например, в зависимости от текущих нужд он может потребовать подключения различных расширений. Symfony требует прав записи всего для двух папок (кэш и логи). Расположение этих папок можно задавать вручную. Консоль фреймворка облегчает разворачивание приложений на сервере. Symfony умеет работать с веб-акселераторами вроде Varnish.

Владельцам бизнеса важно знать, что любой фреймворк – это не готовое приложение и не CMS. Приложениям и CMS присуща, с одной стороны, избыточность функций. С другой стороны, часто возникает необходимость добавить недостающую функциональность. Фреймворк – набор деталей конструктора; он помогает реализовывать приложения, которым присущи уникальные особенности и нужна гибкость. Однако все фреймворки требуют глубокого изучения. Подробнее о фреймворках как об инструментах веб-разработки можно почитать в этой статье.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Scroll Up