Автор (ы) | |
---|---|
Первоначальный выпуск | 16 мая 2006 г.; 14 лет назад (16.05.2006) |
Стабильный выпуск | 2.9.0 / 2 мая 2020 г.; 5 месяцев назад (2020-05-02) |
Репозиторий | |
Написано на | Java |
Операционная система | Linux, Windows, OS X, FreeBSD |
Доступно в | Java |
Тип | Ajax framework |
Лицензия | Лицензия Apache 2.0 |
Веб-сайт | www.gwtproject.org |
Google Web Toolkit (GWT ), или GWT Web Toolkit, представляет собой набор инструментов с открытым исходным кодом, который позволяет веб-разработчикам создавать и поддерживать JavaScript интерфейсные приложения на Java. За исключением нескольких собственных библиотек, все является исходным кодом Java, который может быть построен на любой поддерживаемой платформе с включенными файлами сборки GWT Ant. Он под лицензией Apache License 2.0..
GWT подчеркивает многоразовые подходы к общим задачам веб-разработки, а именно вызовы асинхронных удаленных процедур, управление историей, создание закладок, UI абстракция, интернационализация и кроссбраузер переносимость.
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 г. |
В августе 2010 г. Google приобрела Instantiations, компанию, известную своим вниманием к Eclipse. Инструменты разработчика Java, в том числе GWT Designer, который теперь входит в состав подключаемого модуля Google для Eclipse.
. В 2011 году, с появлением языка программирования Dart, Google заверил сообщество GWT, что GWT продолжит будет поддерживаться в обозримом будущем, но также намекнул на возможное сближение двух подходов Google к "структуре ведущее веб-программирование ". Однако они также признали, что ряд инженеров, ранее работавших над GWT, теперь работают над Dart.
. В 2012 году на своей ежегодной конференции ввода-вывода Google объявил, что GWT будет преобразован из проекта Google в полностью проект с открытым исходным кодом. В июле 2013 года Google опубликовал в своем блоге GWT сообщение о завершении преобразования в проект с открытым исходным кодом.
Используя GWT, разработчики могут разрабатывать и отлаживать Ajax приложения на языке Java с использованием инструментов разработки Java по своему выбору. Когда приложение развернуто, кросс-компилятор GWT переводит приложение Java в автономные файлы JavaScript, которые могут быть затемнены и глубоко оптимизированы. При необходимости, JavaScript также может быть встроен непосредственно в код Java, используя комментарии Java.
GWT не вращается только вокруг программирования пользовательского интерфейса; это общий набор инструментов для создания любых высокопроизводительных клиентских функций JavaScript. Действительно, многие ключевые архитектурные решения полностью оставлены на усмотрение разработчика. Заявление о миссии GWT поясняет философское разделение роли GWT и роли разработчика. Примером этого является история: хотя GWT управляет токенами истории, когда пользователи нажимают «Назад» или «Вперед» в браузере, он не предписывает, как отображать токены истории в состояние приложения.
Приложения GWT могут запускаться в двух режимах:
Доступно несколько подключаемых модулей с открытым исходным кодом для упрощения разработки GWT с другими IDE, включая GWT4NB для NetBeans, Cypal Studio для GWT (плагин Eclipse ) и GWT Developer для JDeveloper. Подключаемый модуль Google для Eclipse обрабатывает большинство задач, связанных с GWT, в среде IDE, включая создание проектов, вызов компилятора GWT, создание конфигураций запуска GWT, проверку и подсветку синтаксиса.
Основные компоненты GWT включают:
Начиная с версии 2.4 (сентябрь 2011 г.), GWT предлагает несколько виджетов и панелей.
Виджеты | Панели |
---|---|
Кнопка | PopupPanel |
PushButton | StackPanel |
RadioButton | StackLayoutPanel |
CheckBox | HorizontalPanel |
DatePicker | VerticalPanel |
ToggleButton | FlowPanel |
TextBox | VerticalSplitPanel |
PasswordTextBox | HorizontalSplitPanel |
TextArea | SplitLayoutPanel |
Гиперссылка | DockPanel |
ListBox | DockLayoutPanel |
CellList | TabPanel |
MenuBar | TabLayoutPanel |
Дерево | DisclosurePanel |
CellTree | |
SuggestBox | |
RichTextArea | |
FlexTable | |
Grid | |
CellTable | |
CellBrowser | |
TabBar | |
DialogBox |
Многие общие виджеты, которых нет в GWT, были реализованы в сторонних библиотеках.
GWT использует или поддерживает Java, Apache Tomcat (или аналогичный веб-контейнер), Eclipse IDE, Internet Explorer и интернационализация и локализация. Основанные на Java GWT RIA могут быть протестированы с использованием среды тестирования JUnit и инструментов покрытия кода. Поскольку GWT позволяет проверять изображения, CSS и бизнес-логику во время компиляции, многие распространенные дефекты разработки автоматически обнаруживаются без необходимости ручного тестирования, обычно требуемого RIA.
Google отмечает, что некоторые из ее продуктов основаны на GWT: Blogger, AdWords, Авиабилеты, Wallet, Предложения, Группы, Входящие.
8 декабря 2009 г. Google запустил Google Web Toolkit 2.0 с Speed Tracer.
Версия 2.0 GWT предлагает ряд новых функций, в том числе:
Поскольку в новом режиме разработки была удалена большая часть кода, зависящего от платформы, новая версия будет распространяться в виде уникального архива, а не по одному для каждой поддерживаемой платформы, как это было в случае с предыдущие версии.
В качестве общей основы для создания веб-приложений GWT также может использоваться в качестве основы для создания приложений для мобильных устройств и планшетов, создавая необходимые виджеты и анимацию с нуля, или используя одну из мобильных платформ для GWT. Приложение HTML5, написанное на GWT, может иметь отдельные представления для планшетов и мобильных телефонов.