Отправляет email-рассылки с помощью сервиса Sendsay

Создание сайтов на Python

  Все выпуски  

Обзор лучших фреймворков для PHP5 - symfony и Zend Framework.


Рассматриваемые темы:

  • Zend Framework
  • symfony

Тема номера: применение фреймворка при создании веб проектов.

Zend Framework является раскрученным фреймворком, который поддерживает компания Zend (участвует в разработке ядра PHP). Этот фреймворк обладает массой инструментов, таких как аутентификация, работа с документами разных типов (PDF, RSS), сильные механизмы поиска и так далее.

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

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

Мне данный фреймворк нравится тем, что он имеет документацию на русском языке. И эта документация переведена довольно качественно, и постоянно обновляется (ведь английский вариант переписывается почти каждый день). Однако, недостаток в документации я считаю следующий - документации настолько много, что ее прочесть очень сложно. И кроме того, непонятно, с чего же начинать читать, если компонентов в фреймворке так много.

Я пользуюсь таким полезным инструментом, как Zend_Db - слой абстракции баз данных. Это позволяет мне не беспокоиться об взломах сайта через SQL-инъекции. Но для того, чтобы этого добиться, мне пришлось переучиваться работе с базой данных. И поверьте, я научился работать с базой данных правильнее, мой код стал более понятным не только мне, но и группе разработчиков, которые работают со мной в команде.

Компоненты Zend для создания сайта на основе паттерна MVC меня в данный момент пугают. Но несмотря на это, я хочу дочитать документацию по этим трем компонентам (Model, View, Controller - MVC) , чтобы понять, как этот механизм построен в данном фреймворке.

Я рекомендую начать работать с этим фреймворком потому, что он имеет большую базу разработчиков, и вы сможете найти ответы на ваши вопросы через поисковую систему Google, так как с вашей проблемой скорее всего кто-то уже столкнулся, и проблема был удачно решена. У других фреймворков нет такого распространения, так как для продвижения продукта нужно вкладывать в рекламу, а откуда взять деньги свободному сообществу?

Заметьте, этот монстр хорош. Но вероятно, вам требуется что-то более конкретное с меньшими излишествами. Встречаем следующего представителя фреймворков - symfony.

Фреймворк symfony является более простым в понимании фреймворком, который, тем не менее имеет очень большие возможности. Документация у данного фреймворка имеется только на английском языке. Однако, есть сайт русской поддержки, на котором переведено всего 4 главы из более, чем 20 глав. Но этого материала вам хватит чтобы понять, подходит ли вам данное решение, или нет.

Чем мне понравилась документация symfony? Я считаю, что рассказывать теорию - не совсем правильно. Нужны примеры. Вот так и написана документация по symfony - вам коротко рассказывают о некоторой возможности, и на примере показывают, как эту возможность использовать при создании собственного блога. Получается, что при прочтении документации. вы получите не только знания, но и готовый блог. Интересно получается. Теперь вы готовы создать свой сайт, который будет создан без особых сложностей, так так у вас уже будет небольшой, но реальный опыт создания сайта на основе фреймворка symfony.

Вы наверное заметили, что symfony я пишу всегда с маленькой буквы. А знаете почему? Интересно? Так вот, в первой главе документации будет рассказано, почему название фреймворка пишется именно с маленькой буквы. Это я вам даю шанс быстрее начать читать документацию. Думаю, это подействует!

Подведение итогов. Как вы понимаете, все в этом Мире имеет как свои достоинства так и недостатки. Я только начал изучать symfony, и н могу утверждать что он лучше другого фреймворка. Однако, уже сейчас я понял, что создавать свой движок для сайта не имеет смысла, так как то, что реализовано в symfony - это очень широкие возможности, объединенные с опытом реальной компании по созданию сайтов (веб студии). Я вижу, что приводимые примеры имеют большие возможности, так как не один год я занимаюсь разработкой безопасных веб приложений, и знаю, какие "узкие" места встречаются в реальных веб приложениях. И мн очень нравится то, что в данном фреймворке те самые "тонкие" места с большим успехом обходятся.

Я вам рекомендую перестать изобретать велосипед. Давайте изобретать что-то более существенное, и инструмент для разработки я вам предложил. За вами выбор. А я желаю терпения, внимательного изучения и плодотворного применения в своих проектах. Я планирую начать использовать с воем личном проекте модель MVC, и сейчас буду проводить аналогию и сравнение того, какая модель является более приемлемой для моих проектов.

Ссылки:
Официальный сайт ZF: http://framework.zend.com
Группа поддержки русского ZF: http://groups.google.ru/group/ru-zend-framework
Официальный сайт symfony: http://www.symfony-project.org
Русская поддержка symfony: http://sfproject.ru
Группа поддержки английского symfony: http://groups.google.ru/group/symfony-users и http://groups.google.ru/group/symfony-devs


В избранное