ZKopen-source Ajax каркас веб-приложений, написанный на Java, который позволяет создавать графические пользовательские интерфейсы для веб-приложений с небольшими необходимыми знаниями программирования.
Ядро ZK состоит из основанного на Ajax механизма событийного управления, более 123 Компоненты на основе XUL и 83 XHTML, а также язык разметки для разработки пользовательских интерфейсов. Программисты создают свои страницы приложений на feature-rich XUL / XHTML компоненты и манипулируют ими при событиях, вызванных действиями конечного пользователя. Это похоже на модель программирования, используемую в настольных приложениях на основе графического интерфейса.
ZK использует сервер - ориентированный подход, при котором синхронизация контента Компоненты и конвейерная обработка событий между клиентами и серверами автоматически выполняются движком, а коды сантехники Ajax полностью прозрачны для разработчиков веб-приложений. Таким образом, конечные пользователи получают такие же интерактивные возможности и скорость отклика, что и настольные приложения, в то время как разработка программистов сохраняет ту же простоту, что и настольные приложения.
Важно отметить, что ZK не использует стандартный механизм ответа веб-запроса <=>и НЕ отправляет поля формы на сервер с использованием параметров запроса GET + или одного запроса POST. Вместо этого на сервер отправляются запросы AJAX для обновления внутреннего состояния каждого виджета экрана. В браузере ZK загружает только описание веб-страницы в формате JSON и использует клиентское средство визуализации для преобразования его в пользовательский интерфейс. Достаточно работоспособен и при ближайшем рассмотрении не скачивает сразу все. Если посмотреть на трафик между клиентом и сервером, можно увидеть несколько запросов, идущих туда и обратно между клиентом и браузером, пока в конечном итоге не завершится рендеринг страницы.
Дополнительная настройка на стороне клиента позволяет разработчику использовать ресурсы на стороне клиента с помощью так называемого объединения сервер + клиент для настройки и уменьшения трафика Ajax.
В дополнение к компонентному программированию, аналогичному Swing, ZK поддерживает язык разметки для определения расширенного пользовательского интерфейса, называемый ZUML.
- ZUML предназначен для разработчиков, не являющихся программистами, для интуитивно понятного проектирования пользовательских интерфейсов.
- ZUML позволяет разработчикам легко объединять различные языки разметки, такие как Mozilla язык XUL и XHTML, в одно и то же страница.
- ZUML позволяет разработчикам встраивать сценарии на чистом языке Java (интерпретируемый BeanShell ) и использовать выражения EL для управления компонентами и доступа к данным.
Содержание
- 1 Возможности
- 2 ZK 9.5.0
- 3 Отличия от XUL
- 4 Системные требования
- 5 Предпосылки навыков программирования
- 5.1 Требуется
- 5.2 Дополнительно
- 6 ZUML
- 7 Клиентские технологии
- 8 Дополнения ZK
- 9 См. Также
- 10 Ссылки
- 11 Внешние ссылки
Возможности
веб-интерфейса iDempiere под ZK6
- Просто Ява. ZK известен своим подходом «Ajax без JavaScript», позволяющим разработчикам прозрачно создавать многофункциональные интернет-приложения без каких-либо знаний Ajax и JavaScript.
- Темы адаптивного дизайна вместе с поддержкой Bootstrap
- HTML 5 и Поддержка CSS 3
- Более 100 компонентов Ajax предлагают разработчикам пользовательского интерфейса разнообразные многофункциональные компоненты для удовлетворения требований корпоративных приложений Ajax.
- ZUML делает дизайн многофункциональных пользовательских интерфейсов похожим на создание HTML-страниц. ZUML - это вариант XUL, наследующий все функции, доступные для XML, и отделяет определение пользовательского интерфейса от логики времени выполнения.
- Управляемая событиями компонентная модель (аналогичная моделям программирования для настольных компьютеров), поддерживающая графический интерфейс с несколькими событиями шаблоны проектирования.
- Поддержка шаблонов проектирования Model-View-Controller (MVC), Model-View-Presenter и Model-View-ViewModel (MVVM)
- Возможность привязки данных через in-ZUML-page аннотации, которые автоматизируют CRUD и синхронизацию состояния между представлением пользовательского интерфейса, данными и POJO.
- Компоненты приложения, такие как электронная таблица, сводная таблица и календарь.
- Поддержка сценариев внедрения с Java (Beanshell). Это важное преимущество, поскольку вы можете использовать единый язык программирования как для пользовательского интерфейса, так и для внутреннего программирования. Дополнительная поддержка других серверных сценариев Java на других языках, таких как JavaScript (Rhino), Ruby (JRuby), Python (Jython) и Groovy.
- Поддержка интеграции с существующими веб-фреймворками через библиотеку пользовательских тегов JSP, JSF support, Portlet и Servlet Filter. Имеет поддержку Spring и Hibernate.
- Расширяемый, так как программисты могут создавать новые пользовательские элементы управления пользовательского интерфейса. Группы элементов управления можно повторно использовать в качестве макрокомпонента.
- Расширенное построение диаграмм с помощью ZK Charts
ZK 9.5.0
Последняя версия 9.5.0 была выпущена 29 сентября, 2020. Он содержит более 80 изменений и предварительную версию с поддержкой WCAG.
Отличия от XUL
- ZK - это серверная структура, которая генерирует HTML и, таким образом, не зависит от наличия на стороне клиента Gecko, что делает ее переносимой в любой браузер. ZK принимает серверные страницы ZUML (xul и xhtml) в качестве входных данных и выводит dhtml для браузера.
- ZK обрабатывает логику пользовательского интерфейса на сервере на Java. Это увеличивает выбор механизмов сценариев и библиотек приложений, которые можно использовать для создания логики. Эффекты презентации можно делегировать браузеру с помощью функции «Действия на стороне клиента», чтобы снизить нагрузку на сервер для эффектов dhtml. Выполнение логики приложения на сервере в едином контейнере приложения снижает объем кроссбраузерности и тестирования версий браузера по сравнению с обширным программированием DOM в браузере.
- Хотя ZK и XUL имеют перекрывающиеся подмножества компонентов, ZK имеет собственные уникальные комплекты компонентов. Библиотека компонентов может быть расширена пользовательскими компонентами. Можно определить макрокомпоненты, которые представляют собой составные части компонентов.
- ZK предоставляет аннотации привязки данных на стороне сервера для декларативной привязки компонентов пользовательского интерфейса к данным на стороне сервера.
- Внешний вид различия.
Системные требования
- JRE версии 1.5 или новее
- Веб-сервер, поддерживающий Servlet 2.3 или новее
Предварительные требования навыков программирования
Требуется
- Базовые знания Java или язык сценариев Java, такой как Groovy, Rhino (Java JavaScript), JRuby (Java Ruby) или Jython (Java Python)
- Базовые знания HTML и XUL
Необязательно
- Знание языка сценариев для написания связующей логики (выполняется на сервере):
- объектно-ориентированное программирование
- Программирование сервлетов
- Ajax
- JavaScript (на стороне клиента)
- Декларативные привязки данных
- Стиль JSTL Expression Language e
ZUML
ZUML (язык разметки пользовательского интерфейса ZK) - это язык разметки для определения расширенного пользовательского интерфейса.
- ZUML разработан для непрограммистов для эффективного проектирования пользовательских интерфейсов с помощью разметки ZUML
- ZUML позволяет разработчику легко объединять различные языки разметки, такие как Mozilla язык XUL и XHTML, в на той же странице.
- ZUML позволяет разработчикам встраивать скрипт на чистом языке Java (интерпретируемый BeanShell ) и использовать выражения EL для управления компонентами и доступа к данным.
- ZUML поддерживается ZK.
- Официальной документацией: Справочник по ZUML
Клиентские технологии
ZK - это серверно-ориентированная структура. Технически вам не нужно знать о реализации на стороне клиента. Так работает ZK Mobile на Java Mobile VM.
Начиная с ZK 5.0, представлена так называемая архитектура Сервер + клиент Fusion . Разработчикам разрешен прямой доступ к виджетам на стороне клиента, если они хотят. ZK Client Engine основан на jQuery. Технически вы можете использовать jQuery-совместимые библиотеки и виджеты.
Дополнения ZK
Диаграммы ZK . Компонент построения диаграмм с API для отображения и управления диаграммами со стороны сервера
ZK Pivottable . Суммирование данных Ajax компонент
ZK Spreadsheet . Компонент электронной таблицы в Интернете. Заменено на Keikai
См. Также
- Портал бесплатного программного обеспечения с открытым исходным кодом
Ссылки
Внешние ссылки
| В Викиучебниках есть книга по темам: ZK |
Официальный сайт
.