Каталог статей
Поиск по базе статей  
Статья на тему Интернет » Интересное в сети » PRADO&nb p;&mda h; компоненты для PHP

 

PRADO&nb p;&mda h; компоненты для PHP

 

 

PRADO

Итак, разговор о PRADO мы, пожалуй, начнем с расшифровки названия. За этой аббревиатурой из пяти букв скрывается достаточно хитро составленная фраза PHP Rapid Application Development Object-oriented. Что же представляет собой PRADO? Позволю себе повторить слова разработчиков описываемого продукта, которые уже цитировал в анонсе к материалу: "PRADO is component-based and event-driven framework for developing Web applications in PHP5". Основной же целью упомянутые разработчики называют "создание такого решения, которое бы позволяло работать с reusable-кодом для Веба по максимуму".

загрузка...

 

 

Да, именно reusable-код считается одним из важнейших для эффективной работы моментов. Причем речь здесь идет не только о независимых кусках этого кода, которые мы вставляем в разные веб-приложения. PRADO идет дальше и предлагает своим пользователям философию разработки, построенную на базе компонентов, но об этом мы поговорим чуть позже.

А для начала хотелось бы добавить пару слов об истории продукта под названием PRADO. Все началось в 2004 году, когда Qiang Xue написал первую версию проекта, еще на PHP4. Со слов автора, вдохновение он черпал в Apache Tapesty, а многие идеи были взяты из Borland Delphi и Microsoft ASP.NET. Затем в рамках конкурса Zend PHP5 coding contest продукт PRADO был переписан в PHP5. К слову, на том конкурсе творение Qiang Xue заняло первое место, получив самые теплые отзывы как со стороны общественности, так и со стороны официального жюри. Впоследствии PRADO пережил несколько тотальных переделок, и в апреле 2006 года мир увидел третью версию этого продукта.

Описание

Итак, компонентный подход к разработке веб-приложений — это явление пусть и знакомое, но все же достаточно редкое. Более того, многие эксперты отзываются о PRADO не иначе как об уникальном продукте, а множество пользователей и слышать не хотят ни о чем другом, кроме PRADO. Однако мы попробуем разобраться, почему дела обстоят именно так позитивно.

Основной элемент в PRADO — это компонентыИз отличительных особенностей разработки веб-приложений с PRADO стоит выделить следующие:

  • Reusability. Об этом пункте мы уже вскользь говорили во вступлении к материалу. Сама философия PRADO включает в себя, условно говоря, протоколы для создания компонентов и дальнейшей работы с ними. Из этих компонентов впоследствии и строятся веб-приложения. Кроме того, каждый компонент имеет свои методы, переменные и параметры.
  • Event-driven-программирование. Если коротко, то любое действие пользователя нашего веб-приложения (к примеру, нажатие определенной кнопки) расценивается движком как серверное событие, поэтому у разработчика отпадает ряд проблем, связанных с отслеживанием действий на клиентской стороне.
  • Разделение презентационного и логического слоев. Об этом говорят сегодня практически все авторы веб-проектов, но на деле оказывается, что упомянутые слои не всегда или не до конца разделены. А это очень важно, ибо позволяет сузить круг обязательных знаний того или иного члена команды, работающей над проектом.
  • Библиотека готовых компонентов. PRADO поставляется в комплекте со множеством готовых заранее и протестированных компонентов, которые способны решать многие из задач, с которыми веб-разработчики сталкиваются ежедневно. Таким образом, только на базе этих компонентов можно создавать полноценные и максимально интерактивные веб-приложения.
  • Поддержка AJAX. Взаимоотношения PRADO и AJAX — очень важный момент, который, думаю, способен склонить в сторону описываемого продукта еще большее количество разработчиков. Во-первых, в PRADO предусмотрена возможность полноценного использования AJAX-функционала в рамках компонентов и веб-приложений. А во-вторых, в PRADO уже встроены многие популярные и часто используемые AJAX-библиотеки, включая Prototype, script.aculo.us и Rico.

PRADO

К перечисленным выше преимуществам еще можно добавить полное соответствие генерируемых PRADO веб-страниц стандарту XHTML и возможность безболезненно использовать PRADO вместе с другими популярными продуктами. К примеру, для работы с базой данных мы можем применить AdoDB или Creole.

Применимость

Следующий вопрос, о котором хотелось бы поговорить в настоящем материале, это применимость PRADO в тех или иных ситуациях, ведь, как известно, далеко не каждое решение может быть успешно использовано в двух разных проектах. Сами создатели PRADO рекомендуют свой продукт тем специалистам, которые занимаются разработкой веб-приложений небольших или средних размеров. То есть для совсем крупных проектов герой сегодняшнего обзора подходит с трудом.

Дело тут вот в чем: при грамотной реализации действительно масштабных веб-приложений или сервисов важную роль играет функционал, отвечающий за кеширование контента. Хоть в PRADO они и есть, но многие специалисты, имевшие дело с этим продуктом, отмечают, что их уровень оставляет желать лучшего. В то же время на помощь всегда может прийти, к примеру, Zend optimizer. В любом случае при использовании PRADO в рамках крупного проекта тонкостей, требующих к себе внимания, становится значительно больше.

PRADO пропагандирует event-driven-программированиеК слову, сравнивать PRADO с другими frameworks или библиотеками для PHP-программистов сложно. В первую очередь потому, что этот продукт пропагандирует совсем другой подход к разработке веб-приложений. В процессе сбора информации для статьи мне не раз и не два приходилось сталкиваться с таким определением для PRADO: высокоуровневый язык, стоящий над простым PHP. В некотором роде это правда: PRADO является технологией, значительно превосходящей по своим возможностям обычную framework.

Практика

Разбираться с тем, как работает PRADO, мы будем на простейшем примере, в рамках которого создадим веб-приложение с одной кнопкой, при нажатии на которую страница будет перезагружаться с той же самой кнопкой, но уже с новым текстом. Решить такую задачу можно несколькими способами. В PRADO есть объект TButton, который и реализует объект кнопки. У него есть параметр Text (текст кнопки), и с ним можно связать событие OnClick (нажатие пользователем на кнопку). Именно в рамках этих знаний мы и будем действовать.

PRADO

Но для начала разберемся с тем, как в PRADO следует организовывать файлы. Каждое веб-приложение здесь состоит из нескольких файлов, которые хранятся в различных папках согласно их назначению. В нашем случае мы создаем папку test, в которой затем создаем еще несколько папок: assets, protected, protected/pages, protected/runtime.

Рассмотрим назначение каждой из папок:

  • assets — в этой папке хранятся файлы, необходимые для работы веб-приложения и не являющиеся кодом; к примеру, изображения, звуки, видеофайлы или CSS-файлы;
  • protected — здесь хранятся файлы с данными, необходимыми для работы веб-приложения, и файлы со скриптами;
  • protected/runtime — в этой папке создаются и хранятся файлы с runtime-данными, необходимыми для работы веб-приложения (например, кешированные данные и т. д.);
  • protected/pages — здесь хранятся все страницы, относящиеся к веб-приложению.

Затем нам потребуется создать еще три файла: index.php (в корневой папке), Home.page и Home.php (в папке protected/pages). Все, больше для нашего маленького примера файлов или папок не понадобится. Теперь осталось лишь рассказать о том, за что каждый из файлов отвечает, и добавить весь необходимый код.

index.php

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

require_once('path/to/prado.php'); // добавляем базовый скрипт PRADO
$application = new TApplication; // создаем PRADO application instance
$application->run(); // запускаем PRADO application

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

Home.page

Любое веб-приложение в PRADO должно иметь свою базовую страницу с именем Home, а файл с расширением .page является шаблоном для этой страницы. Вообще же шаблоны в PRADO определяют презентационный слой наших приложений и компонентов. То есть внутри этих файлов мы описываем с помощью языка HTML и специальных тегов разметку той или иной страницы.

<html>
<body>
<com:TForm>
<com:TButton Text="Нажимать здесь" OnClick="buttonClicked" />
</com:TForm>
</body>
</html>

Как видно из примера, мы использовали два специальных тега: com:TForm и com:TButton. Они сообщают движку PRADO, что на страницу надо добавить элементы формы и кнопки. Думаю, тут все просто и понятно даже новичку.

Home.php

Последний файл в нашем примере. В нем мы описываем класс для страницы Home. Если же говорить в общем, то подобные файлы содержат методы, отвечающие за логику наших приложений или компонентов. Для настоящего материала у нас в файле Home.php есть лишь один метод, отвечающий за событие OnClick у кнопки на странице.

class Home extends TPage
{
public function buttonClicked($sender, $param)
{
$sender->Text = "Кнопка была нажата!";
}
}

PRADO

И здесь ничего сложного нет. Наш класс Home строится на базе класса TPage, который отвечает в PRADO за страницы. Единственная функция buttonClicked меняет текст кнопки при перезагрузке страницы на "Кнопка была нажата!". Стоит обратить внимание на объект $sender, который является ссылкой на элемент страницы, который вызвал функцию.

PRADO поставляется со множеством готовых компонентовНа этом пример заканчивается, ибо у нас получилось полностью готовое веб-приложение, которое при желании можно разместить на сервере и запустить. Разумеется, его масштаб не сравнится с более-менее комплексными проектами, но, для того чтобы понять схему разработки, такого объема вполне достаточно. Единственное, о чем хотелось бы напомнить, это встроенные в PRADO компоненты. Их много, и они решают очень широкий спектр задач: к примеру, paging, сортировка данных или работа с комментариями. Причем работать с ними немногим сложнее, чем в нашем примере.

Итог

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

Ссылки по теме




Статья получена: hostinfo.ru
загрузка...

 

 

Наверх


Постоянная ссылка на статью "PRADO&nb p;&mda h; компоненты для PHP":


Рассказать другу

Оценка: 4.0 (голосов: 16)

Ваша оценка:

Ваш комментарий

Имя:
Сообщение:
Защитный код: включите графику
 
 



Поиск по базе статей:





Темы статей






Новые статьи

Противовирусные препараты: за и против Добро пожаловать в Армению. Знакомство с Арменией Крыша из сэндвич панелей для индивидуального строительства Возможно ли отменить договор купли-продажи квартиры, если он был уже подписан Как выбрать блеск для губ Чего боятся мужчины Как побороть страх перед неизвестностью Газон на участке своими руками Как правильно стирать шторы Как просто бросить курить

Вместе с этой статьей обычно читают:

Acura RS-X - новое купе для высоких результатов

Acura RS-X - все для выдающихся результатов Американское подразделение компании Honda представило на Североамериканском Международном автомобильном салоне в Детройте новое роскошное спортивное купе Acura RS-X. Вице-президент компании Honda Dick Colliver говорит, что Acura RS-X - опытный образец технологий и направлений моделирования новых спортивных гоночных купе, которые придут на замену устаревшей Integra. Опытный образец RS-X создан с использованием новых компьютерных те ...

» Американскии автомобили - 2744 - читать


AJAX для PHP&nb p;&mda h; легко

Серверный язык PHP уже давно стал одним из признанных лидеров в сфере веб-разработок. Многие специалисты любят его за относительную простоту и большие возможности. В то же время бум Web 2.

» Интересное в сети - 1982 - читать


Экстремальный стиль для PHP

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

» Интересное в сети - 1857 - читать


Секреты PHP-функций для работы с&nb p;массивами. Обработка данных и&nb p;сортировка

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

» Интересное в сети - 2176 - читать


Секреты PHP-функций для работы с&nb p;массивами. Создание массивов

Основное назначение массивов — быстрая обработка данных. Часто разработчики программного обеспечения выполняют с их помощью сортирование информации, манипулирование исходными данными и получение различных выборок из наборов данных. Бытует мнение, что функциональность массивов гораздо проще организовать с помощью применения «толстой» прослойки SQL-кода и обращения к внешним приложениям типа специализированных хранилищ данных.

» Интересное в сети - 2067 - читать



Статья на тему Интернет » Интересное в сети » PRADO&nb p;&mda h; компоненты для PHP

Все статьи | Разделы | Поиск | Добавить статью | Контакты

© Art.Thelib.Ru, 2006-2024, при копировании материалов, прямая индексируемая ссылка на сайт обязательна.

Энциклопедия Art.Thelib.Ru