Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Схемы разработки web-приложений.↑ ⇐ ПредыдущаяСтр 10 из 10 Содержание книги
Поиск на нашем сайте
Tapestry - это открытый фреймворк для создания динамичных, гибких, масштабируемых веб-приложений на Java. Он создан для разработки приложений, начиная от самых малых и заканчивая объемными приложениями с тысячами страниц, над которыми работают большие распределенные команды разработчиков. Tapestry основан на 4-х принципах: Простота - разработка веб-приложений не должна требовать незаурядных умственных способностей. Устойчивость и слаженность - что работает в компонентах, должно работать в страницах; что работает в малых приложениях, должно работать в больших; разные разработчики должны находить одни и те же решения для одних и тех же проблем. Производительность и масштабируемость. Обеспечение обратной связи. Эти четыре принципа обеспечивают основную идею фреймворка - самое правильное решение должно быть самым простым. + Rational Unified Process (RUP) — методология разработки программного обеспечения, созданная компанией Rational Software. +модальный подход +использование асинхронных сообщений (AJAX) ????? Технология Struts Apache Struts — фреймворк с открытым исходным кодом для создания Java EE веб-приложений. Основывается на Java Servlet API и расширяет его, в архитектурном плане реализует (или дает возможность реализовать) паттерн MVC. Фреймворк создан Крейгом МакКланаханом и передан Apache Foundation в мае 2000 года. Сначала находился в составе Apache Jakarta Project и был известен как Jakarta Struts. С 2005 года является проектом Apache верхнего уровня. Предназначение Apache Struts и его структура В обычном Java EE веб-приложении клиент, как правило, отправляет информацию на сервер из формы. Введённые данные передаются сервлету, который обрабатывает её, при необходимости взаимодействуя с базой данных, и формирует HTML ответ. Для больших проектов (например, для портала с сотнями страниц), такой подход является неадекватным, так как объединяет бизнес логику и логику отображения, что делает поддержку чрезвычайно сложной. Struts был создан для того, чтобы чётко разделить модель (бизнес-логику), представление (HTML-страницы) и контроллер (отвечающий за передачу данных от модели к представлению и обратно). Struts предоставляет стандартный контроллер — сервлет под именем ActionServlet и различные средства для создания страниц представления. Разработчик веб-приложения отвечает за написание кода модели и создание конфигурационного файла struts-config.xml, который связывает воедино модель, представление и контроллер.
Запросы от клиента передаются контроллеру в виде «Actions» (действий), определённых в конфигурационном файле. Когда контроллер получает такой запрос, он передаёт его соответствующему Action классу. Последний взаимодействует с кодом Модели и возвращает контроллеру «ActionForward», строку, определяющую страницу для отправления клиенту. Информация передаётся между моделью и представлением в виде особых JavaBeans. Богатая библиотека тегов позволяет получать данные из бинов и записывать их без Java кода. Struts также поддерживает i18n (интернационализацию), облегчает валидацию данных полученных из веб-формы и предоставляет механизм создания шаблонов под названием «Tiles», который кроме всего прочего позволяет наследовать веб-страницы. Tехнология Apache Cocoon Apache Cocoon — программный каркас для разработки веб-приложений. Он ориентирован на использование XML и построен с использованием языка программирования Java. Гибкость, завязанная на использование XML, позволяет публиковать содержимое в различных форматах, включая XML, PDF и WML. В частности, на основе данного программного каркаса создана мощная система управления содержимым Apache Lenya. Cocoon также широко используется как средство хранения данных, а также как промежуточное программное обеспечение для передачи данных между системами.
Технология Прежде чем использовать технологию Lutris, разработчикам и проектировщикам необходимо договориться о том, в какие точки HTML-документа должны встраиваться идентификационные теги, обрамляющие части страниц, изменяющиеся в результате работы запрограммированных на Java процедур бизнес-логики. Сервер Java/XML-приложений Enhydra Благодаря этим тегам разграничивается создание программного кода инженерами и HTML-кода - дизайнерами. Применение таких идентификационных тегов позволяет клиентам строить легко модифицируемые HTML-шаблоны и многократно их использовать, не меняя базового приложения. Единственное ограничение, накладываемое технологией Lutris в этой области, - изменения не должны касаться идентификационных тегов.
Готовый HTML-файл пропускается через компилятор Lutris, преобразующий его сначала в формат XML (Extensible Markup Language - расширяемый язык разметки), а затем в Java-класс. Преобразование из XML в Java основано на спецификации Document Object Model (модель документного объекта) консорциума World Wide Web Consortium. Java-класс, загрузка которого инициируется написанной программистом бизнес-логикой, упакован в JAR-файл, пригодный для исполнения в среде Enhydra или на любом другом сервере Java-приложений. Технология Tapestry Tapestry— объектно-ориентированный java фреймворк для создания веб-приложений реализующих модель MVC. Изначально Tapestry был создан Howard Lewis Ship (русск. Говард Льюис Шип), но впоследствии поддерживался и развивался организацией Apache Software Foundation. Основной акцент в Tapestry сделан на простоту, лёгкость использования, невозможность программистами создания больших кусков «glue code». Tapestry использует модульный подход к веб-разработке, используя биндинг между компонентами (объектами) пользовательского интерфейса на веб-странице и соответствующими им java-классами В Tapestry 4 веб-приложения разбиваются на страницы и компоненты. Страницы описывают уровень компонент, в то время как компоненты определяют функциональность. Этот подход разделяет цельное веб-приложение на легкоуправляемые фрагменты кода, которые управляют взаимодействием с пользователем, бизнес логикой и состоянием (en). Компоненты также делятся на базовые (core) и дополнительные (supplemental). Базовые компоненты являются основными «строительными кирпичами» приложения, такие как валидаторы форм, средства для построения интерфейса или объекты состояния. Дополнительные компоненты определяют, каким образом группа базовых компонент может взаимодействовать с другими базовыми компонентами в группе. Шаблоны компонентов в Tapestry представляют собой XHTML файлы. Как правило, маппинг между java-классами и XHTML-объектами, которыми они управляют описывается в XML файле. Взаимодействие между backend'ом (java класс) и frontend'ом (XHTML объект) осуществляется с помощью OGNL. Разметка страницы производится иным образом, нежели в PHP, ASP, и JSP, в которых используются специальные теги для разделения переменных шаблона и кода. Разработка пятой версии Tapestry началась вскоре после релиза версии 4. Разработчики поняли, что оригинальная архитектура, основанная на наследовании от базовых классов, затрудняет улучшение и развитие фреймворка с сохранением обратной совместимости в каждом релизе. Кроме того, она не позволяла решить большое количество проблем преследовавших разработчиков которые использовали данный фреймворк. Новый подход (и новая кодовая база) основывался на POJO, аннотациях и конвенции об именовании. Аннотации и конвенции о наименовании полностью вытеснили файлы дескрипторов в формате XML предыдущих версий. Кроме того, была устранена необходимость в перекомпилировании, архивировании, деплое и перезапуске сервлетов при каждом изменении в коде. Данная возможность получила название «живая перезагрузка классов» («live class reloading»). Все перечисленные возможности делают Tapestry 5 необычайно гибким.
|
||||||
Последнее изменение этой страницы: 2016-09-20; просмотров: 228; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.15.237.229 (0.009 с.) |