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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Alex Boyd
July 25, 2013
Programming
0
110
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
Tweet
Share
Other Decks in Programming
See All in Programming
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
170
疑似コードによるプロンプト記述、どのくらい正確に実行される?
kokuyouwind
0
380
フルサイクルエンジニアリングをAI Agentで全自動化したい 〜構想と現在地〜
kamina_zzz
0
400
OSSとなったswift-buildで Xcodeのビルドを差し替えられるため 自分でXcodeを直せる時代になっている ダイアモンド問題編
yimajo
3
620
Package Management Learnings from Homebrew
mikemcquaid
0
220
CSC307 Lecture 03
javiergs
PRO
1
490
dchart: charts from deck markup
ajstarks
3
990
AIによる高速開発をどう制御するか? ガードレール設置で開発速度と品質を両立させたチームの事例
tonkotsuboy_com
7
2.3k
SourceGeneratorのススメ
htkym
0
190
LLM Observabilityによる 対話型音声AIアプリケーションの安定運用
gekko0114
2
430
AI Schema Enrichment for your Oracle AI Database
thatjeffsmith
0
280
20260127_試行錯誤の結晶を1冊に。著者が解説 先輩データサイエンティストからの指南書 / author's_commentary_ds_instructions_guide
nash_efp
1
960
Featured
See All Featured
Accessibility Awareness
sabderemane
0
51
Code Review Best Practice
trishagee
74
20k
Building AI with AI
inesmontani
PRO
1
690
Design in an AI World
tapps
0
140
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
Site-Speed That Sticks
csswizardry
13
1.1k
Reality Check: Gamification 10 Years Later
codingconduct
0
2k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.7k
Mobile First: as difficult as doing things right
swwweet
225
10k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
730
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