Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Google Web Toolkit in Practice
Search
Alex Boyd
July 25, 2013
Programming
110
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Google Web Toolkit in Practice
Inside view of what GWT is, why iRule uses, some disadvantages, and the future of GWT.
Alex Boyd
July 25, 2013
Other Decks in Programming
See All in Programming
5分で問診!Composer セキュリティ健康診断
codmoninc
0
500
Prismを使った型安全な暗号化_関数型まつり2026
_fhhmm
0
150
Claude Opus 4.6以後の受託開発エンジニアの変化(Claude Code開発ノウハウ大公開スペシャルbyクラスメソッド)
iidatakuma
1
830
Embedded SREと共に達成した会員管理システムのAWS移行 - SRE NEXT 2026 ランチスポンサーセッション
niftycorp
PRO
1
2.8k
関数型プログラミングのメリットって何だろう?
wanko_it
0
180
なぜ型を書くのか? TSKaigi2026で改めて考える #tskaigi_smarthr
kajitack
0
400
Hatena Engineer Seminar #37「言語モデルの活用に関する研究」
slashnephy
0
530
自作OSでスライド発表する
uyuki234
1
3.9k
どこまでゆるくて許されるのか
tk3fftk
0
520
音楽のための関数型プログラミング言語mimiumにおける多段階計算の活用
tomoyanonymous
1
350
act2-costs.pdf
sumedhbala
0
120
鹿野さんに聞く!『TypeScriptコードレシピ集』で磨く実践力
tonkotsuboy_com
4
1.1k
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
180
Scaling GitHub
holman
464
140k
Designing Powerful Visuals for Engaging Learning
tmiket
1
450
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.2k
30 Presentation Tips
portentint
PRO
1
350
Paper Plane (Part 1)
katiecoart
PRO
1
9.8k
A Soul's Torment
seathinner
6
3.1k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
How GitHub (no longer) Works
holman
316
150k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
750
Transcript
Google Web Toolkit in Practice Detroit Google Developers Group June
25, 2013 iRule Alex Boyd
Title iRule • iruleathome.com Alex Boyd Who is iRule?
Google Web Toolkit Pronounced 'gwit' What is GWT? History of
GWT Who uses it?
Title iRule • iruleathome.com Alex Boyd Front End Web Framework
For RIA
Title iRule • iruleathome.com GWT 1.0.0 – 2006 • Web
2.0 • Huge Java ecosystem • Hole in Javascript toolset • jQuery started January 2006 GWT 1.3 – 2007 • First Open Source Release GWT 2.0 – 2009 • DevMode, CssResources, ClientBundle Alex Boyd GWT History GWT 2.2 / 2.3 – 2011 • Better AppEngine Integration • GWT Designer • HTML5 Support GWT 2.5 – 2013 • Super Dev Mode • Closure Compiler • Google Relinquishes Control GWT 2.5.1 – Current
Title iRule • iruleathome.com Alex Boyd Who uses it?
How GWT works Compilation / Result Browser Loading
Alex Boyd Compilation and Result iRule • iruleathome.com
Alex Boyd Browser Loading iRule • iruleathome.com Load HTML Host
Page | | |____ Load Bootstrap JS File | | |____ Load Browser Specific JS File
How iRule uses GWT Builder Manager Mobile
iRule • iruleathome.com Alex Boyd Builder
Title iRule • iruleathome.com Alex Boyd Builder Resizable Sections Menu
Bar Tree Drag and Drop Tabs
Title iRule • iruleathome.com Alex Boyd Manager
Title iRule • iruleathome.com Alex Boyd Mobile
The Beauty of GWT Productivity for developers, performance for users
Advantages
Title iRule • iruleathome.com Alex Boyd Cross Browser Compatibility
Title iRule • iruleathome.com Alex Boyd Familiar Tools / Language
Title iRule • iruleathome.com Alex Boyd Familiar Tools Debug Integration
Code completion Compile-time errors
Title iRule • iruleathome.com Alex Boyd Dynamic Reusable Widgets http://gwt.googleusercontent.com/samples/Showcase/Showcase.html
Title iRule • iruleathome.com Alex Boyd GWT UI Designer
Title iRule • iruleathome.com Alex Boyd GWT Internationalization https://developers.google.com/web-toolkit/tools/ gwtdesigner/features/gwt/internationalization
Title iRule • iruleathome.com Alex Boyd GWT / GAE Integration
Title iRule • iruleathome.com Alex Boyd Code Obfuscation
Title iRule • iruleathome.com Alex Boyd Embedded Resources CSS /
Images • Syntax validation • Minification • Constants • Functions • Obfuscation CSS Pitfalls of Traditional Images • Large overhead • Useless freshness checks • Blocking HTTP connections
Title iRule • iruleathome.com Alex Boyd JavaScript Native Interface
GWT : The Bad Disadvantages
Title iRule • iruleathome.com Alex Boyd Learning Curve
Title iRule • iruleathome.com Alex Boyd Compilation Speed / Debug
Title iRule • iruleathome.com Alex Boyd Large DOM tree
Title iRule • iruleathome.com Alex Boyd Search Engine Indexing ???
??? ???
Anatomy of a GWT Application Project Generation Project Structure Hello
World! Application
Title iRule • iruleathome.com Alex Boyd Project Generation Maven
Title iRule • iruleathome.com Alex Boyd Project Generation Google Plugin
for Eclipse
Title iRule • iruleathome.com Alex Boyd Project Structure |-‐src
|-‐main |-‐java |-‐com.irule.helloworld |-‐client |-‐GreetingService.java |-‐HelloWorld.java |-‐server |-‐GreetingServiceImpl.java |-‐shared |-‐FieldVerifier.java |-‐resources |-‐com.irule.helloworld |-‐HelloWorld.gwt.xml |-‐webapp |-‐WEB-‐INF |-‐web.xml |-‐HelloWorld.css |-‐HelloWorld.html |-‐pom.xml Maven Google Plugin for Eclipse |-‐src |-‐com.irule.helloworld |-‐client |-‐GreetingService.java |-‐HelloWorld.java |-‐server |-‐GreetingServiceImpl.java |-‐shared |-‐FieldVerifier.java |-‐HelloWorld.gwt.xml |-‐war |-‐WEB-‐INF |-‐web.xml |-‐HelloWorld.html |-‐HelloWorld.css
Alex Boyd Code – Where it all begins iRule •
iruleathome.com
Alex Boyd Code – HTML Page iRule • iruleathome.com
Alex Boyd Result iRule • iruleathome.com
Powered by GWT Smart GWT Ext GWT MGWT / gwt-phonegap
Alex Boyd Smart GWT iRule • iruleathome.com
Alex Boyd Sencha GXT iRule • iruleathome.com
Alex Boyd MGWT / gwt-phonegap iRule • iruleathome.com
Future of GWT Openness, Simplicity, Speed, Interoperability, Mobility
Alex Boyd Committee Goals iRule • iruleathome.com Openness • More
Direct Committers • CI Server • GWT Steering mailing list Simplify • Cleanup old code - Bye, bye IE6! • Break GWT into smaller modules Speed • Improve compile time • Faster DevMode / SuperDevMode • Better speed profiling tools Interoperability • Simplify JSNI • Better hybrid app support ( GWT and native JS ) Mobility • Mobile browser support • Packaged Apps