in Профессиональное

Хочешь свой фреймворк – их есть у меня!..

… Сказал Фабиен Потенсье:

А зачем мне это надо – свой фреймворк?

Почему вам может захотеться создать ваш собственный фреймворк? Если вы оглядитесь вокруг – все будут вам говорить, что не стоит изобретать колесо, что вам лучше выбрать фреймворк из существующих и забыть про создание чего-то своего. И таки да, в основном они все правы, но я хочу вам предложить несколько причин, по котором стоит заняться созданием своего фреймворка. Итак, я хочу создать свой фреймворк чтобы:

  • Изучить низкоуровневую архитектуру современных web-фреймворков в общем и о Symfony2 в частности;
  • Создать фреймворк для некоторой особенной задачи (просто удостоверьтесь заранее, что ваша задача действительно особенная);
  • Провести эксперимент для удовольствия (метод учись-и-пробуй);
  • Провести рефакторинг старого/существующего приложения, которому нужен большой глоток современных практик web-разработки;
  • Доказать всем, что вы можете самостоятельно создать фреймворк (… ну может только слегка напрягшись)).

Пруф

UPDATE1: вторая часть статьи (работаем с компонентом Symfony2 HttpFoundation)

UPDATE2: третья часть статьи (Request & Response в действии)

UPDATE3: четвёртая часть статьи (подключаем Routing)

Write a Comment

Comment

*

  1. Дмитрий,
    думаю, Вы в курсе – 26-29.09 в Сан-Франциско состоится конференция по Symfony. Вопрос: Как Вы считаете, сможет ли Symfony2 выйти на уровень Друпала, в котором уже используются компоненты Symfony.

    • Сергей, по-моему напрямую сравнивать Drupal и Symfony 2 совершенно некорректно. Как вы заметили в своём вопросе, компоненты Symfony используются в Drupal 8й версии (во всяком случае я точно читал о намерении интегрировать HttpFoundation и ещё несколько). То есть, Symfony это фреймворк, каркас. А Drupal это CMS, система управления контентом. Из сравнимых разработок на Symfony, есть пожалуй только cmf.symfony.com, хотя и эта разработка более низкоуровневая (не является end-user ready, изначально рассчитанная на кастомную разработку). Так что я думаю проникновение компонент Symfony в другие проекты, это хорошо, но сравнивать их нельзя, так как у них разные области применимости.

      Если же рассматривать внедрение компонент в Drupal как попытку оптимизировать релизную политику или стабилизировать API, то наверное это не выход, лишь куча рефакторинга и новых багов ) имхо.