Пару дней назад вышла очередная и долгожданная версия фреймворка для разработки веб-приложений — GWT в версии 2.5.0.RC1. Давайте посмотрим, что же нового мы увидим в релизе 2.5.
1) Super Dev Mode — экспериментальная замена привычному Development Mode. Как и его предшественник, Super Dev Mode позволяет GWT разработчикам быстро перекомпилировать код и видеть результат в браузере. Также он позволяет пользоваться дебагером. Однако работает он иначе. Если не вдаваться в подробности, о которых вы можете почитать тут, то отличия от старого доброго Dev Mode следующие:
Есть конечно и недостатки. Из основных следует отметить то, что работа над Super Dev Mode еще не закончена, а также он пока тестируется только в Chrome и Firefox.
2) Elemental — новая экспериментальная библиотека для быстрого легковесного и «to the metal» веб программирования в GWT.
Elemental поддерживает все фичи HTML5, включая доступ к DOM конечно, но также и WebGL, WebAudio, WebSockets, WebRTC, Web Intents, Shadow DOM, File API и другие. Elemental также включает высокопроизводительные коллекции и новую JSON библиотеку, которые одновременно хорошо работают как в браузере, так и на сервере.
3) Новые оптимизации компилятора. GWT компилятор может по желанию использовать Closure compiler для обеспечения дополнительной JavaScript оптимизации. Поскольку эти оптимизации замедляют компиляцию, для их включения нужно воспользоваться специальным флагом компилятора
4) Обновленная поддержка ARIA. Добавлена новая ARIA библиотека, которая полностью охватывает W3C ARIA стандарт. Она облагчает правильное назначение ARIA ролей, состояний и свойств DOM элементов.
5) Улучшенный UiBinder. В GWT 2.5 добавлено расширения для UiBinder, которое поддерживает рендеринг ячеек и управление событиями. В частности, это позволяет UiBinder генерировать реализацию UiRenderer для помощи в рендеринге SafeHtml и диспетчеризации событий для методов отмеченных @UiHandler тегом.
Также введены IsRenderable/RenderablePanel типы. Когда используются вместо HTMLPanel, они могут значительно уменьшить время рендеринга и снизить отклик сложных UiBinder интерфейсов.
Это лишь краткий обзор основных фич. С более полным описанием новых фич и починенных багов можно ознакомиться в Release Notes.
Загрузить GWT 2.5.0.RC1 можно здесь.
А также появился GWT плагин для Eclipse 4.2 Juno, который можно загрузить обычным для плагинов способом. Адрес репозитория: dl.google.com/eclipse/plugin/4.2
1) Super Dev Mode — экспериментальная замена привычному Development Mode. Как и его предшественник, Super Dev Mode позволяет GWT разработчикам быстро перекомпилировать код и видеть результат в браузере. Также он позволяет пользоваться дебагером. Однако работает он иначе. Если не вдаваться в подробности, о которых вы можете почитать тут, то отличия от старого доброго Dev Mode следующие:
- Не требуется плагин для браузера. Поддерживать разные браузеры станет проще, в том числе и на мобильных устройствах.
- Не делается автоматическая перекомпиляция после каждой перезагрузки страницы, что упрощает дебаг многостраничных приложений.
- Super Dev Mode не будет страдать от ошибок в плагинах различных браузеров.
- Разработчики могут производить дебаг Java, JavaScript, и возможно других языков стороны клиента в одной и той же дебаг-сессии. Это особенно полезно, когда GWT код вызывает напрямую JavaScript.
- Браузерные дебагеры имеют продвинутые фичи, такие как DOM breakpoints.
Есть конечно и недостатки. Из основных следует отметить то, что работа над Super Dev Mode еще не закончена, а также он пока тестируется только в Chrome и Firefox.
2) Elemental — новая экспериментальная библиотека для быстрого легковесного и «to the metal» веб программирования в GWT.
Elemental поддерживает все фичи HTML5, включая доступ к DOM конечно, но также и WebGL, WebAudio, WebSockets, WebRTC, Web Intents, Shadow DOM, File API и другие. Elemental также включает высокопроизводительные коллекции и новую JSON библиотеку, которые одновременно хорошо работают как в браузере, так и на сервере.
3) Новые оптимизации компилятора. GWT компилятор может по желанию использовать Closure compiler для обеспечения дополнительной JavaScript оптимизации. Поскольку эти оптимизации замедляют компиляцию, для их включения нужно воспользоваться специальным флагом компилятора
-XenableClosureCompiler
.4) Обновленная поддержка ARIA. Добавлена новая ARIA библиотека, которая полностью охватывает W3C ARIA стандарт. Она облагчает правильное назначение ARIA ролей, состояний и свойств DOM элементов.
5) Улучшенный UiBinder. В GWT 2.5 добавлено расширения для UiBinder, которое поддерживает рендеринг ячеек и управление событиями. В частности, это позволяет UiBinder генерировать реализацию UiRenderer для помощи в рендеринге SafeHtml и диспетчеризации событий для методов отмеченных @UiHandler тегом.
Также введены IsRenderable/RenderablePanel типы. Когда используются вместо HTMLPanel, они могут значительно уменьшить время рендеринга и снизить отклик сложных UiBinder интерфейсов.
Это лишь краткий обзор основных фич. С более полным описанием новых фич и починенных багов можно ознакомиться в Release Notes.
Загрузить GWT 2.5.0.RC1 можно здесь.
А также появился GWT плагин для Eclipse 4.2 Juno, который можно загрузить обычным для плагинов способом. Адрес репозитория: dl.google.com/eclipse/plugin/4.2