Пользователь
0,0
рейтинг
4 мая 2007 в 01:31

Обновлен Seagull PHP Framework


Совсем недавно в свет вышла новая версия этого фреймворка за номером 0.6.2. Более 4х месяцев потребовалось для разработки, но несмотря на отсутствие коренных измнений, в фреймворк добавлены многие полезные фичи, которые в основном коснулись работы с Ajax.

Если вы уже знакомы с Seagull, настоятельно советую ознакомиться с новой версией по ссылке www.seagullproject.org/publisher/articleview/action/view/frmArticleID/80

А если нет — я проведу небольшой обзор этого мощного, но слабо раскрученого фреймворка.



Первый вопрос, который задаст веб-разработчик: «зачем мне ещё один фреймворк»?

Ответ, очень простой: фреймворком можно назвать всё что угодно, и далеко не все фреймворки взаимозаменяемы, а потому для каждой цели лучше использовать подходящую платформу. И если вы спросите моё мнение, то Seagull PHP Framework — лучшая платформа для разработки комплексных веб-сайтов.

Наверное, я не буду останавливаться на технических спецификациях, не буду опять рассказывать, что этот фреймворк реализует паттерн MVC, имеет модульную архитектуру и пр. Эти и многие другие элементы типичны и для других фреймворков, если вас они интересуют — www.seagullproject.org

Я же, лучше расскажу о тех преимуществах, которые дает Сигал при разработке. Первое, что должно заинтересовать веб-разработчика, это огромное количество модулей, которые входят в пакет в Сигала. Кроме базовых User Management, Navigation в состав входит модуль Blocks и Publisher. Последний являеться довольно мощной CMS, построенной на основе фреймворка. Кстати сказать, CMS тут не одна, совсем недавно появился альтернативный модуль, и насколько я знаю, планируется ещё один.

Кроме этих базовых модулей в состав входит:
Blog — интегрированый в систему блог Serendipity
Export — экспорт и импорт данных в RSS формате
Faq — создание простого списка вопросов-ответов
FirstPage — генерация удобной стартовой странички с произвольным расположением блоков
и другие…

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

Поехали дальше. Следующей особенностью Сигала, являеться то, что разработчики совершенно не собираються переписывать все известные PHP библиотеки в своем ядре. Они поступили проще и включили пакет PEAR в состав ядра. Базовые библиотеки Сигала расширяют классы PEAR, объединяя их в одном ядре. Например, Object Relational Mapping реализуется посредством PEAR_DataObjects, и как можно догадаться — PEAR_DB отвечает за доступ к базам данных. Также, используються библиотеки CacheLite, Translation2, Pager, Config и другие. Также хочеться отметить, что основным шаблонизатором явлеться PEAR'овский Flexy. Который немного быстрее, но мало отличим по синтаксису от Smarty.

Очень радует, что все настройки этих и других библиотек реализуються через веб-интерфейс администраторской панели. Вы можете редактировать конфигурационные файлы, изменять перевод, добавлять модули, редактировать настройки, и всё через админку. Особенно отмечу возможность создания модели данных через администраторскую панель. Seagull автоматически генирирует объекты PEAR_DataObjects на основе имеющихся таблиц в базе данных. И всё это по одному клику в администраторской панели.

Работать с Сигалом удобно, конечно нельзя не отметить громаздкость архитектуры, и не странно, если в состав входит весь PEAR. Но удобная организация кода, и огромное количество имеющихся примера на основе написанных модулей дает возможность писать эффективный и удобочитаемый код. Для написания своего модуля вы можете воспользоваться генератором модулей, или переделать один из базовых модулей.

Здесь, я бы написал здесь какую-то рекламную строчку, ещё раз убеждая вас в том, что Сигал это круто и удобно, но так как я не разработчик, делать этого не буду. Я лучше выскажу пару слов критики, и тезисно выпишу его недостатки.

1. малая известность проекта. А вместе с тем и довольно низкая активность в комьюнити и игнорирование проекта в медиа.
2. Некоторая громоздкость проекта. Огромное количество файлов и библиотек обьясняеться тем, что «всё включено».
3. Нет преимуществ в разработке Ajax-приложений. В пакет Сигала входит поддержка Prototype и Scriptaculus, есть удобные примеры по их использованию. Но сам Сигал не реализует никаких методов для упрощения Ajax-разработки.

А так, проект в любом случае интересный и стоящий. По своим возможностям, он обходит все другие PHP-фреймворки, и пракически ни в чем им не уступает.
Davert @Davert
карма
104,8
рейтинг 0,0
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое

Комментарии (5)

  • 0
    Ой, как все жирно.
  • 0
    Спасибо.
    Особенно за это:
    Наверное, я не буду останавливаться на технических спецификациях, не буду опять рассказывать, что этот фреймворк реализует паттерн MVC, имеет модульную архитектуру и пр. Эти и многие другие элементы типичны и для других фреймворков
    Я же, лучше расскажу о тех преимуществах, которые дает Сигал при разработке.
  • 0
    Как насчет мануала?
    • 0
      Весь мануал там находится в их trac'е.
      http://trac.seagullproject.org/


      Но в отличии от других фреймворков этот можно начать юзать сходу. Установил, запустил, посмотрел на примеры модулей и работаешь по ним
  • 0
    Спасибо за обзорчик.

    Всегда считал что хороший framework (в отличие от хорошей CMS) не должен включать обязательного шаблонизатора (т.е. используй то, что тебе нравится) и, соответственно, должен позволять использовать для этого хоть XSLT, хоть native PHP. Кроме того с непониманием отношусь к поддержке AJAX. На мой взгляд это тоже должно быть out of scope. Опять же, чтобы можно было выбрать.
    Вообще, имхо хороший framework это ничего кроме "frame" - пустых рамок, чтобы заполнять их согласно твоим убеждениям / требованиям к проекту. Когда это уже включено в core то возникает сомнение: а не тесно ли оно там интегрировано?

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.