Advanced GWT Training (GWT201)
Course Length: 2 days
Delivery Methods:
Available as private class only
Course Overview
In this GWT training class, students learn advanced aspects of GWT as a framework, including unit testing, the Model-View-Presenter architecture, dependency injection, resource bundles, building native JavaScript bridges, and much more.
Course Benefits
- Learn to create and use modules in GWT.
- Learn advanced aspects of CSS styling within GWT.
- Learn to develop your own composite widgets.
- Learn to develop and run jUnit tests in GWT.
- Understand the Model-View-Presenter architecture and how to use it.
- Learn to use GWT's Dependency Injection facilities.
- Learn to use native JavaScript and JSON within GWT.
- Understand GWT's cell widgets.
- Learn some best practices for GWT.
Course Outline
- Using Modules in GWT
- What are GWT Modules?
- Using External Modules
- Modularizing An Application
- Deferred Binding
- Code Splitting
- Creating Composite GWT Widgets
- Custom GWT Widgets
- Composite GWT Widgets
- Developing Composite Widgets
- Using Composite Widgets
- Styling with CSS in GWT
- GWT Visual Themes
- Styling Widgets in GWT
- Associating CSS Files with a Module
- Dependent Styles
- More Client Bundle Elements: CSS Resources, Data Resources, and External Resources
- Testing and Debugging GWT Modules
- Unit Testing Concepts
- The JUnit Test Framework
- Writing a JUnit Test Case
- GWT Unit Testing with GWTTestCase
- Testing Asynchronous Code
- Model View Presenter and Dependency Injection
- Introduction to Model-View-Presenter
- Patterns for Implementing MVP
- The Event Bus
- Structuring an Application for Dependency Injection
- Adding GIN Dependency Injection to a Module
- Key Gin and Guice Annotations
- More Server Integration Options in GWT
- Using HTTP Requests
- Manipulating an XML DOM
- Integrating Using JSON
- GWT JavaScript Native Interface
- Defining JSNI Methods
- Sharing Data between JavaScript and Java
- Talking to the Browser via JSNI
- Using External JavaScript
- Using a JavaScriptObject in GWT
- Java Callbacks from External JavaScript
- Using External Libraries
- Advanced GWT Connectivity
- Stateful and Stateless Servers
- The Cell Widgets
- Using Stateful Servers
- The Request Factory
- Using Editors
- GWT Best Practices
- Security Issues
- Performance Concerns
- Internationalization in GWT
- GWT Pitfalls and Issues
- Testing Practices for GWT
- Using Dependency Injection
Class Materials
Each student will receive a comprehensive set of materials, including course notes and all the class examples.
Class Prerequisites
Experience in the following is required for this class:
- Fair knowledge of Java programming language
- Basic understanding HTML, CSS, Javascript and their relationships
- Basic GWT knowledge as taught in our introductory course
Experience in the following would be useful for this class:
- Some foundation in widget-based Form development using events
- Basic knowledge of HTTP protocol