Введение

Свободная библиотека Java Google Web Toolkit (GWT '/ɡ//w//ɪ//t/), или GWT Web Toolkit, является набором инструментов с открытым исходным кодом, который позволяет веб-разработчикам создавать и поддерживать JavaScript-приложения в Java. Он лицензирован по лицензии Apache 2.0. GWT подчеркивает многоразовые подходы к повседневным задачам веб-разработки, а именно асинхронные удаленные вызовы процедур, управление историей, закладки, абстракцию пользовательского интерфейса, интернационализацию и переносимость между браузерами.

История

Версия GWT 1.0 RC 1 была выпущена 16 мая 2006 года. Google объявил о GWT на конференции JavaOne в 2006 году. + История выпуска Дата выпуска GWT 1.0 17 мая 2006 GWT 1.1 11 августа 2006 GWT 1.2 16 ноября 2006 GWT 1.3 5 февраля 2007 GWT 1.4 28 августа 2007 GWT 1.5 27 августа 2008 GWT 1.6 7 апреля 2009 GWT 1.7 13 июля 2009 GWT 2.0 8 декабря 2009 GWT 2.1.0 19 октября 2010 GWT 2.2.0 11 февраля 2011 GWT 2.3.0 3 мая 2011 GWT 2.4.0 8 сентября 2011 GWT 2.5.0 октября 2012 GWT 2.5.1 марта 2013 GWT 2.6.0 30 января 2014 GWT 2.6.1 10 мая 2014 GWT 2.7.0 20 ноября 2014 GWT 2.8.0 20 октября 2016 GWT 2.8.1 24 апреля 2017 GWT 2.8.2 19 октября 2017 GWT 2.9.0 2 мая 2020 GWT 2.10.0 9 июня 2022 GWT 2.11.0 9 января 2024 В 2010 году Google приобрел Java Instantiations, компанию, известную тем, что фокусируется на инструментах для разработчиков Eclipse, включая GWT Designer, который теперь поставляется в паке с плагином Google Eclipse. В 2011 году с введением языка программирования Dart Google заверил сообщество GWT, что GWT будет продолжать поддерживаться в обозримом будущем, но также намекнул на возможное сближение двух подходов Google к "структурированному веб-программированию". Они также признались, однако, что несколько инженеров, ранее работавших над GWT, теперь работают над Dart. В 2012 году на своей ежегодной конференции I/O Google объявил, что GWT будет преобразована из проекта Google в полностью открытый проект. В июле 2013 года Google опубликовал в своем блоге GWT, что трансформация в проект с открытым исходным кодом была завершена.

GWT 2.0

8 декабря 2009 года Google запустил Google Web Toolkit 2.0 с Speed Tracer. Версия 2.0 GWT предлагает ряд новых функций, в том числе: В режиме разработки браузера (ранее известный как режим хостинга вне процесса, OOPHM): до версии 2.0 хостинг использовался для встраивания модифицированного браузера, чтобы позволить запускать байткодную версию приложения во время разработки. С версии 2.0 хостинг-режим, переименованный в "режим разработки", позволяет использовать любой (поддерживаемый) браузер для просмотра страницы, отлаживаемой с помощью плагина браузера. Плагин взаимодействует с оболочкой режима разработки с использованием TCP/IP, что позволяет отлаживать ошибки на разных платформах (например, отлаживание ошибок в Internet Explorer на Windows из оболочки режима разработки, работающей на машине Linux). Разделение кода: разработчик предоставляет "раздельные точки" в исходном коде, компилятор GWT может разделить код JavaScript на несколько небольших кусков вместо одной большой загрузки. Это приведет к сокращению времени запуска приложения, поскольку размер первоначальной загрузки уменьшится. Декларативный пользовательский интерфейс: с использованием формата XML новая функция, известная как UiBinder, позволяет создавать пользовательские интерфейсы с помощью декларации, а не кода. Это позволяет четко разделить конструкцию пользовательского интерфейса и реализацию поведения. Сбор ресурсов: интерфейс ClientBundle позволит объединять ресурсы любого характера (изображения, CSS, текст, двоичный файл) и передавать их в одной загрузке, что приведет к меньшему количеству поездок на сервер и, следовательно, к снижению задержки приложения. Поскольку в новом режиме разработки удалена большая часть специфического кода платформы, новая версия будет распространяться как уникальный архив, а не один на поддерживаемую платформу, как это было в случае с предыдущими версиями.

Мобильные

В качестве общей структуры для создания веб-приложений, Google Web Toolkit также может использоваться в качестве структуры для создания мобильных и планшетных приложений, либо путем создания необходимых виджетов и анимаций с нуля, либо путем использования одной из мобильных рамок для GWT. Приложение HTML5, написанное на GWT, может иметь отдельные представления для планшетов и мобильных телефонов.