Download - Google Web Toolkit (JUG Latvia)
Google Web Toolkitwww.jug.lv
AgendaIntroductionWhy is unique?Why needed?Who uses?
PollWho knows what GWT is?Who tried that?Who is using in projects?
Compared to Other FrameworksStrutsJSFApache WicketZKSpring MVCRails...
The RealityNot really the same…GWT is a Rich Client Framework Similar to hand-written JavaScript client
ArchitectureStandalone clientHTTP/Ajax communication
Rich Client (JavaScript)
Java Backend (REST, RPC)
HTTP
http://gwt.google.com/samples/Mail/Mail.html
The EssenceSwing-like development model
Cross-browser Java to JavaScript Compiler
Statement
GWT is one of the best tools for webapp scalability
GWT Performance Tricks
trafficmemor
ycpu
GWT CompilerTranslationOptimizationCompression Obfuscation
Deferred BindingSeparate JS for each browser
Byte- code
Java Script
Java Script
Java Script
Java Code
javac gwtc
Bootstrap Sequenceindex.html (small, temporary cache)nocache.js (small)cache.js (large, eternal cache)
Code SplittingSingle JS is too large
Split Points
Loads JS in partsHTTP
Main.java
One.java Two.java Three.java
No Page ReloadsAnchors-basedSingle page applicationNo refreshes (no HTTP traffic)
http://www.site.com/#index
http://www.site.com/#search
http://www.site.com/#resource/1?option=Y
Async ModelSingle thread
Callbacks
RPC SerializationDirect-EvalSimpleTODO Give snippets
Resource BundlesImagesText resourcesCSS
Summary
GWT Pros and Cons+ Full control+ Performance and scalability+ Portability+ Development Speed- Non-trivial development model- Plenty of design/architecture options- IE6 and IE7 are still out there...
ConclusionsVery powerful yet complicated toolCache everythingCompress everythingLess HTTP requests
FutureVersion 2.1 is out now (October 29th)
Questionshttp://code.google.com/webtoolkit/
About the SpeakerDmitry Buzdin
Agile software developer working with Java since 2005Based in C.T.CoReach me at [email protected]