Jump to content

ЗК (каркас)

Разработчик(и) зкосс .org
Стабильная версия
9.6.0 / 10 августа 2021 г .; 2 года назад ( 10.08.2021 ) [1]
Репозиторий
Операционная система Кроссплатформенность ( JVM )
Тип Веб-фреймворк Ajax
Лицензия LGPL / ZOL / Коммерческий [2]
Веб-сайт зкосс .org

ZK — это с открытым исходным кодом Ajax платформа веб-приложений , написанная на Java . [3] [4] [5] это позволяет создавать графические пользовательские интерфейсы для веб-приложений без особых знаний программирования.

Ядро ZK состоит из Ajax на основе механизма , управляемого событиями , более 123 компонентов на основе XUL и 83 компонентов на основе XHTML . [6] и язык разметки для проектирования пользовательских интерфейсов. Программисты разрабатывают страницы своих приложений с помощью многофункциональных компонентов XUL / XHTML и манипулируют ими в зависимости от событий, вызванных действиями конечного пользователя. Она похожа на модель программирования, используемую в настольных приложениях с графическим интерфейсом.

ZK использует серверно-ориентированный подход, при котором синхронизация содержимого компонентов и конвейерная передача событий между клиентами и серверами автоматически выполняются движком, а сантехнические коды Ajax полностью прозрачны для разработчиков веб-приложений. Таким образом, конечные пользователи получают такую ​​же интерактивность и оперативность, как и настольное приложение, в то время как разработка программистов сохраняет такую ​​же простоту, как и разработка настольных приложений.

ZK не использует стандартный механизм веб -запроса-ответа и не отправляет поля формы на сервер, делая запрос GET с параметрами запроса или запрос POST . Вместо этого на сервер отправляются запросы AJAX для обновления внутреннего состояния каждого экранного виджета. В браузере ZK загружает только описание веб-страницы в формате JSON и использует клиентский рендерер, чтобы превратить его в пользовательский интерфейс. Он вполне работоспособен и при ближайшем рассмотрении не загружает все сразу. Анализ трафика между клиентом и сервером показывает, что между клиентом и браузером происходит несколько запросов, пока рендеринг страницы в конечном итоге не завершится.

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

В дополнение к компонентному программированию, аналогичному Swing , ZK поддерживает язык разметки для расширенного определения пользовательского интерфейса, называемый ZUML.

  • ZUML предназначен для разработчиков, не являющихся программистами, позволяющих интуитивно разрабатывать пользовательские интерфейсы.
  • ZUML позволяет разработчикам легко объединять различные языки разметки, такие как язык Mozilla XUL и XHTML, на одной странице.
  • ZUML позволяет разработчикам встраивать сценарии на чистом языке Java (интерпретируемом BeanShell ) и использовать выражения EL для управления компонентами и доступа к данным.
веб-интерфейс iDempiere под ZK6
  • Просто Ява. ZK известен своим подходом «Ajax без JavaScript», позволяющим разработчикам создавать многофункциональные веб-приложения прозрачно, без каких-либо знаний Ajax и JavaScript.
  • Адаптивные темы дизайна и поддержка Bootstrap.
  • Поддержка HTML 5 и CSS 3.
  • Более 100 компонентов Ajax предлагают дизайнерам пользовательского интерфейса множество многофункциональных компонентов, отвечающих требованиям корпоративных приложений Ajax.
  • ZUML делает проектирование многофункциональных пользовательских интерфейсов похожим на создание HTML-страниц. ZUML — это вариант XUL, наследующий все функции, доступные XML, и отделяющий определение пользовательского интерфейса от логики времени выполнения.
  • Модель на основе компонентов, управляемая событиями (аналогично моделям программирования для настольных компьютеров), поддерживающая несколько шаблонов проектирования графического пользовательского интерфейса, управляемых событиями. [7]
  • Поддержка модели-представления-контроллера (MVC), [8] Модель-Представление-Презентатор [9] и Модель-Представление-ViewModel (MVVM). [10] шаблоны проектирования
  • Возможность привязки данных с помощью аннотаций на странице ZUML, которые автоматизируют CRUD и синхронизацию состояний между представлением пользовательского интерфейса, данными и POJO.
  • Компоненты приложения, такие как электронная таблица, сводная таблица и календарь.
  • Внедрение поддержки сценариев с помощью Java (Beanshell [11] ). Это важное преимущество, поскольку вы можете использовать единый язык программирования как для пользовательского интерфейса, так и для внутреннего программирования. Дополнительная поддержка других сценариев Java на стороне сервера на других языках, таких как JavaScript (Rhino [12] ), Руби (JRuby [13] ), Питон (Jython [14] ) и Грови. [15]
  • Поддержка интеграции с существующими веб-платформами через библиотеку пользовательских тегов JSP, поддержку JSF, портлет и фильтр сервлетов. Имеет поддержку Spring и Hibernate.
  • Расширяемость в том смысле, что программисты могут создавать новые пользовательские элементы управления пользовательского интерфейса. Группы элементов управления можно повторно использовать в качестве макрокомпонента.
  • Обширные графики с помощью ZK Charts

Отличия от XUL

[ редактировать ]
  • ZK — это серверная платформа, которая генерирует HTML и, таким образом, не зависит от присутствия Gecko на стороне клиента , что делает ее переносимой в любой браузер. ZK принимает серверные страницы ZUML (xul и xhtml) в качестве входных данных и выводит dhtml для браузера.
  • ZK обрабатывает логику пользовательского интерфейса на сервере на Java. Это расширяет выбор механизмов сценариев и библиотек приложений, которые можно использовать для создания логики. Эффекты презентации можно делегировать браузеру с помощью функции «Действия на стороне клиента», чтобы снизить нагрузку на сервер для эффектов dhtml. Выполнение логики приложения на сервере в одном контейнере приложения сокращает объем межбраузерного тестирования и тестирования версий браузера по сравнению с обширным программированием DOM в браузере.
  • В то время как ZK и XUL имеют перекрывающееся подмножество компонентов, ZK имеет свои собственные уникальные наборы компонентов. Библиотека компонентов может быть расширена за счет пользовательских компонентов. Макрокомпоненты могут быть определены как составные части компонентов.
  • ZK предоставляет аннотации привязки данных на стороне сервера для декларативной привязки компонентов пользовательского интерфейса к данным на стороне сервера.
  • Посмотрите и почувствуйте различия.

Системные требования

[ редактировать ]
  • JRE версии 1.5 или новее
  • Веб-сервер, поддерживающий сервлет 2.3 или новее.

Необходимые навыки программирования

[ редактировать ]

Необходимый

[ редактировать ]
  • Базовые знания Java или языка сценариев Java, такого как Groovy , Rhino (Java JavaScript), JRuby (Java Ruby) или Jython (Java Python)
  • Базовые знания HTML и XUL.

Необязательный

[ редактировать ]
  • Знание скриптового языка для написания связующей логики (работающей на сервере):
  • Объектно-ориентированное программирование
  • Программирование сервлетов
  • Аякс
  • JavaScript (клиентский)
  • Декларативные привязки данных
  • в стиле JSTL Язык выражений

ZUML (язык разметки пользовательского интерфейса ZK) — это язык разметки для определения расширенных пользовательских интерфейсов.

  • ZUML предназначен для непрограммистов, позволяющих эффективно разрабатывать пользовательские интерфейсы с помощью разметки ZUML.
  • ZUML позволяет разработчику легко объединять различные языки разметки, такие как язык Mozilla XUL и XHTML, на одной странице.
  • ZUML позволяет разработчикам встраивать скрипты на чистый язык Java (интерпретируемый BeanShell ) и использовать выражения EL для управления компонентами и доступа к данным.
  • ZUML поддерживается ZK .
  • Официальная документация: Справочник ZUML

Клиентские технологии

[ редактировать ]

ZK — это серверно-ориентированная структура. Технически вам не нужно знать о реализации на стороне клиента. Именно так работает ZK Mobile на виртуальной машине Java Mobile.

Начиная с ZK 5.0, так называемый «сервер+клиент Fusion». [16] представлена ​​архитектура. Разработчикам разрешен прямой доступ к виджетам на стороне клиента, если они этого захотят. Клиентский движок ZK основан на jQuery . [17] Технически вы можете использовать библиотеки и виджеты, совместимые с jQuery.

Дополнения

[ редактировать ]

См. также

[ редактировать ]
  1. ^ «Примечания к выпуску ZK 9.6.0» .
  2. ^ ZK 3 и более ранние версии распространяются по лицензии GPL .
  3. ^ Чен, Анри (2008). ЗК — Ajax без JavaScript . Апресс. п. 125. ИСБН  978-1-59059-901-3 .
  4. ^ Стаубле, Маркус (2008). Руководство разработчика ZK . Пакт Паблишинг. п. 184. ИСБН  978-1-84719-200-4 .
  5. ^ Ван дер Шифф, Андре (31 марта 2009 г.). «Взгляд на фреймворки MVC» . ITWeb. Архивировано из оригинала 22 августа 2009 г. Проверено 14 апреля 2009 г. Фреймворки MVC предоставляют ограниченную функциональность по сравнению с ZK, Echo и другими веб-фреймворками Java.
  6. ^ «ЗК Эксплорер» . Zkoss.org . Проверено 25 августа 2010 г.
  7. ^ Мэсси, Саймон. «Реализация шаблонов графического пользовательского интерфейса, управляемых событиями, с использованием платформы ZK Java AJAX» . www.ibm.com/ . ИБМ . Проверено 5 июля 2014 г.
  8. ^ «ZK — Справочник разработчика ZK/MVC — Документация» . Книги.zkoss.org. 27 января 2014 г. Проверено 2 марта 2014 г.
  9. ^ «ZK — Small Talks/2011/Ноябрь/Привет ZK MVVM — Документация» . Books.zkoss.org . Проверено 2 марта 2014 г.
  10. ^ «ZK — Small Talks/2011/ноябрь/MVVM в ZK 6 — Создайте свою первую страницу MVVM — Документация» . Books.zkoss.org . Проверено 2 марта 2014 г.
  11. ^ «Облегченные сценарии для Java» . БинШелл . Проверено 2 марта 2014 г.
  12. ^ «Носорог | МДН» . Мозилла.орг. 9 августа 2012 г. Проверено 2 марта 2014 г.
  13. ^ «Главная — JRuby.org» . Jruby.codehaus.org. 25 февраля 2014 г. Архивировано из оригинала 30 августа 2009 года . Проверено 2 марта 2014 г.
  14. ^ «Джитон: Домашняя страница» . Jython.org. Архивировано из оригинала 16 мая 2009 г. Проверено 2 марта 2014 г.
  15. ^ «Отличный — Дом» . Groovy.codehaus.org. 18 февраля 2014 г. Архивировано из оригинала 2 марта 2014 года . Проверено 2 марта 2014 г.
  16. ^ Клэр, Тимоти (9 февраля 2010 г.). «Слияние сервера и клиента: архитектурное предложение» . Доктор Добб. Хорошая архитектура платформы является гибкой, позволяя разработчикам и архитекторам реализовывать свои приложения умным и элегантным способом.
  17. ^ Махаджан, Сачин (19 октября 2010 г.). «Улучшите разработку Ajax за счет сочетания кода jQuery, ZK и Java» . IBM DeveloperWorks. Сочетание серверного Java-кода и jQuery может помочь вам решить проблемы разработки корпоративных приложений Ajax.
[ редактировать ]

Официальный сайт

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 4ad365d25efccc1b5c3def16277ea605__1721821560
URL1:https://arc.ask3.ru/arc/aa/4a/05/4ad365d25efccc1b5c3def16277ea605.html
Заголовок, (Title) документа по адресу, URL1:
ZK (framework) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)