5.6. Пользовательский интерфейс на Polymer
Клиентский блок пользовательского интерфейса на Polymer предоставляет возможность быстрого создания front-end порталов с mobile-first responsive веб-интерфейсом. Он основан на фреймворке Google Polymer и обеспечивает тесную интеграцию с мобильными браузерами для добавления веб-приложений на home screen устройстваи для работы оффлайн.
Polymer UI платформы CUBA имеет следующие особенности:
-
Система сборки Polymer полностью интегрирована в систему сборки проекта, основанную на Gradle, так что все инструменты сборки загружаются и устанавливаются автоматически. В то же время, после создания в проекте модуля Polymer, front-end разработчики могут продолжить работу над ним, используя стандартные инструменты Polymer.
-
Платформа предоставляет набор веб-компонентов для работы с middleware через стандартный REST API. См. описание компонентов ниже.
-
CUBA Studio позволяет быстро создать клиентский модуль Polymer и генерировать код веб-компонентов приложения по модели данных проекта. Studio содержит обширный и расширяемый набор шаблонов для генерации компонентов, работающих с сущностями модели данных.
На данный момент наш подход заключается в максимальном использовании методов и инструментов, предоставляемых командой Polymer для создания Progressive Web Apps. Мы стараемся не отходить далеко от примеров и практик описанных в документации Polymer, чтобы снизить порог вхождения и унифицировать процесс изучения технологии. Приложения на базе Polymer не только используют Веб-компоненты, но и сами состоят из них.
По умолчанию, Studio генерирует пользовательский интерфейс на основе paper-elements - набора элементов от Polymer, который построен на принципах material design от Google. Также можно использовать и другие компоненты, создав для них свои шаблоны в Studio.
Для эффективной разработки необходимо ознакомиться с основами Polymer: https://github.com/Polymer/polymer#polymer-in-1-minute. Предпочтительнее изучить тему глубже: https://www.polymer-project.org/2.0/start/. Так как Polymer строится вокруг Web стандартов, изучая его, вы, во многом, изучаете саму веб-платформу.