Google Web Toolkit (GWT) Training Description
Google Web Toolkit (GWT) is a development toolkit for building and optimizing complex browser-based applications. GWT is used by many products at Google, including Google Wave and Google AdWords. It's open source, completely free, and used by thousands of developers around the world. In this workshop we cover all of the nuts and bolts of GWT (the widget library, history support, etc.) but we also place a strong emphasis on GWT best-practices and patterns. This course can also be customized for your needs.
Google Web Toolkit (GWT) Training Objective
Learn to build non-trivial AJAX applications using GWT.
Google Web Toolkit (GWT) Training Prerequisites
Core Java
Google Web Toolkit (GWT) Training Course duration
5 Days
Google Web Toolkit (GWT) Training Course outline
- Overview
- What is GWT?
- GWT compiler
- GWT emulator (hosted mode)
- GWT compared to other web frameworks
- GWT compared to other AJAX frameworks
- Pros and cons of GWT
- Understanding Modules
- What is a module?
- Recommended module structure
- Custom module structure
- Adapting GWT into an existing web app structure
- Inheriting modules
- GWT widget library
- Basic widgets
- Label
- Button
- TextBox
- Hyperlink
- Text widgets
- Label
- HTML
- TextBox
- Hidden
- PasswordTextBox
- TextArea
- RichTextArea
- Simple Layouts
- VerticalPanel
- HorizontalPanel
- FlowPanel
- DockPanel
- More Layout Panels
- TabPanel
- StackPanel (Accordion)
- SplitPanel
- DeckPanel
- Tables and trees
- Lists and checkboxes
- ListBox
- RadioButton
- CheckBox
- SuggestBox
- Popups, dialogs and menus
- PopupPanel
- DisclosurePanel
- DialogBox
- Menu
- DecoratorPanel
- Other Panels
- ScrollPanel
- HTMLPanel
- AbsolutePanel
- FocusPanel
- Event Handling
- Understanding Listeners
- Mouse Events
- Key Events
- Click Events
- Other Events
- Images
- Image Widget
- Prefetching Image
- Bundling Images
- Connecting to Data and Back-end Services
- AJAX Overview
- Connectivity options
- Asynchronous callbacks
- The RequestBuilder class
- Performance issues
- GWT RPC
- Remote and Async Interfaces
- Servlet Implementation
- Asynchronous Callbacks
- Exception Handling
- GWT Serialization
- Invoking XML Web Services
- Invoking JSON Services
- Creating Web-friendly applications
- Creating bookmarkable pages
- History and the back button
- Performance Concerns
- Cache versus nocache
- Cross-Product Compilation
- Image Bundling
- Lazy-loading widgets
- Pre-fetching
- Obfuscation
- Miscellaneous API's
- Cookies
- Timers
- Random
- Window and Location
- The GWT class
- Creating Custom Widgets
- Composites
- From Scratch using Java
- Using JavaScript
- Calendar widget
- DatePicker widget
- 3rd Party Widgets
- MyGWT
- Ext GWT
- GWT Widget Library
- GWT Drag and Drop
- The GWT Incubator
- Google Gears
- Occasionally connected apps
- Local SQL
- Local Documents
- Background Processing
- JSNI
- JavaScriptObject
- Implement a Java native using JavaScript
- Call from JavaScript into Java
- Call from Java into JavaScript
- Sharing Objects between Java and JavaScript
- Integrating with other technologies
- GWT with JSP
- GWT with JSF
- GWT with Struts
- Evolving legacy apps to GWT
- GWT Architecture and Best Practice Patterns
- MVC
- MVP
- Event Aggregator
- Separated Presentation
- Observer Synchronization
- Supervising Controller
- Passive View
- Notification
- Data Binding
- Miscellaneous
- Debugging GWT applications
- Security Issues
- Write classes that run on both server and client - GWT.isClient
- Image Bundles
- Internationalization
- Using GWT's dictionary to access JavaScript values in host page
- Unit testing GWT modules
- GWT and CSS
- 5 GWT Hidden Gems
- 5 GWT Pitfalls
- Advanced Topics
- Deferred Binding: The Magic GWT.create()
- Low-level event handling
- Manipulating the DOM directly
- Command, DeferredCommand, IncrementalCommand
|