This article contains content that is written like an advertisement. (October 2019) |
Original author(s) | |
---|---|
Initial release | May 16, 2006 |
Stable release | 2.9.0
/ May 2, 2020 |
Repository | |
Written in | Java |
Operating system | Linux, Windows, OS X, FreeBSD |
Available in | Java |
Type | Ajax framework |
License | Apache License 2.0 |
Website | www |
Google Web Toolkit (GWT /ˈɡwɪt/), or GWT Web Toolkit,[1] is an open-source set of tools that allows web developers to create and maintain JavaScript front-end applications in Java. Other than a few native libraries, everything is Java source that can be built on any supported platform with the included GWT Ant build files. It is licensed under the Apache License 2.0.[2]
GWT emphasizes reusable approaches to common web development tasks, namely asynchronous remote procedure calls, history management, bookmarking, UI abstraction, internationalization, and cross-browser portability.
GWT version 1.0 RC 1 was released on May 16, 2006.[3] Google announced GWT at the JavaOne conference, 2006.[4]
Release | Date |
---|---|
GWT 1.0 | May 17, 2006 |
GWT 1.1 | August 11, 2006 |
GWT 1.2 | November 16, 2006 |
GWT 1.3 | February 5, 2007 |
GWT 1.4 | August 28, 2007 |
GWT 1.5 | August 27, 2008 |
GWT 1.6 | April 7, 2009 |
GWT 1.7 | July 13, 2009 |
GWT 2.0 | December 8, 2009 |
GWT 2.1.0 | October 19, 2010 |
GWT 2.2.0 | February 11, 2011 |
GWT 2.3.0 | May 3, 2011 |
GWT 2.4.0 | September 8, 2011 |
GWT 2.5.0 | October 2012 |
GWT 2.5.1 | March 2013 |
GWT 2.6.0 | January 30, 2014 |
GWT 2.6.1 | May 10, 2014 |
GWT 2.7.0 | November 20, 2014 |
GWT 2.8.0 | October 20, 2016 |
GWT 2.8.1 | April 24, 2017 |
GWT 2.8.2 | October 19, 2017 |
GWT 2.9.0 | May 2, 2020 |
In August 2010, Google acquired Instantiations,[5] a company known for its focus on Eclipse Java developer tools, including GWT Designer, which is now bundled with Google Plugin for Eclipse.
In 2011 with the introduction of the Dart programming language, Google has reassured the GWT community that GWT will continue to be supported for the foreseeable future, but also hinted at a possible rapprochement between the two Google approaches to "structured web programming". They've also admitted however that a number of engineers previously working on GWT are now working on Dart.[6]
In 2012 at their annual I/O conference, Google announced that GWT would be transformed from a Google project to a fully open sourced project.[7] In July 2013, Google posted on its GWT blog that the transformation to an open source project was complete.[8]
Using GWT, developers can develop and debug Ajax applications in the Java language using the Java development tools of their choice. When the application is deployed, the GWT cross-compiler translates the Java application to standalone JavaScript files that are optionally obfuscated and deeply optimized. When needed, JavaScript can also be embedded directly into Java code, using Java comments.[9]
GWT does not revolve only around user interface programming; it is a general set of tools for building any sort of high-performance client-side JavaScript functionality. Indeed, many key architectural decisions are left completely to the developer. The GWT mission statement[10] clarifies the philosophical breakdown of GWT's role versus the developer's role. History is an example of such: although GWT manages history tokens as users click Back or Forward in the browser, it does not prescribe how to map history tokens to an application state.
GWT applications can be run in two modes:
Several open-source plugins are available for making GWT development easier with other IDEs, including GWT4NB[15] for NetBeans, Cypal Studio for GWT[16] (an Eclipse plugin), and GWT Developer for JDeveloper. The Google Plugin for Eclipse handles most GWT related tasks in the IDE, including creating projects, invoking the GWT compiler, creating GWT launch configurations, validation, and syntax highlighting.
The major GWT components include:
As of version 2.4 (September 2011), GWT offers several widgets[21] and panels.[21]
Widgets | Panels |
---|---|
Button | PopupPanel |
PushButton | StackPanel |
RadioButton | StackLayoutPanel |
CheckBox | HorizontalPanel |
DatePicker | VerticalPanel |
ToggleButton | FlowPanel |
TextBox | VerticalSplitPanel |
PasswordTextBox | HorizontalSplitPanel |
TextArea | SplitLayoutPanel |
Hyperlink | DockPanel |
ListBox | DockLayoutPanel |
CellList | TabPanel |
MenuBar | TabLayoutPanel |
Tree | DisclosurePanel |
CellTree | |
SuggestBox | |
RichTextArea | |
FlexTable | |
Grid | |
CellTable | |
CellBrowser | |
TabBar | |
DialogBox |
Many common widgets not found in the GWT have been implemented in third-party libraries.
GWT uses or supports Java, Apache Tomcat (or similar web container), Eclipse IDE, Internet Explorer,[22] and internationalization and localization. Java-based GWT rich web applications can be tested using JUnit testing framework and code coverage tools. Because GWT allows compile time verification of images, CSS, and business logic, many common development defects are automatically discovered without need of the manual testing commonly required by RIAs.
Google has noted that some of its products are GWT-based:[23]Blogger, AdWords, Flights, Wallet, Offers, Groups, Inbox.[24]
On Dec 08, 2009 Google launched Google Web Toolkit 2.0 with Speed Tracer.[25]
Version 2.0 of GWT offers a number of new features,[26] including:
Since the new development mode removed most platform-specific code, the new version will be distributed as a unique archive, instead of one per supported platform as was the case with previous versions.
As a general framework for making web apps, GWT is also capable of being used as a framework for making mobile and tablet apps, either by making the needed widgets and animations from scratch, or by using one of the mobile frameworks for GWT. An HTML5 app written in GWT can have separate views for Tablets and Mobile phones.
The main executable entry point for the GWT Java to JavaScript compiler.
A base for classes that compile Java JProgram
representations into corresponding Js source.
By: Wikipedia.org
Edited: 2021-06-18 12:36:30
Source: Wikipedia.org