SlideShare une entreprise Scribd logo
1  sur  33
Télécharger pour lire hors ligne
Javascript as a target language: 
GWT Kickoff (Part 1/2) 
Alberto Mancini - Francesca Tosi 
alberto@jooink.com - francesca@jooink.com
Alberto 
alberto@jooink.com 
http://github.com/jooink 
http://www.jooink.com 
http://jooink.blogspot.com
Francesca 
francesca@jooink.com 
+FrancescaTosi 
@francescatosi 
http://github.com/jooink 
http://www.jooink.com 
http://jooink.blogspot.com
GWT cos’è 
Google Web Toolkit (GWT) is an open source Java software 
development kit that makes writing AJAX applications like 
Google Maps and Gmail easy for developers. 
http://www.gwtproject.org/
GWT Stats 
Official GWT Report by Vaadin 
[2012] - 
https://vaadin.com/gwt-report-2012- 
portlet/download/1871870899/Future-of-GWT-Report-2012. 
pdf 
[2013] - (del 10/04/2014 → GWT in crescita) 
https://vaadin.com/documents/10187/42fbbec4-51c8-426b- 
8aa8-fe46129353a3
GWT Stats 
E’ una delle 
librerie più 
utilizzate 
http://zeroturnaround.com/rebellabs/the-curious-coders- 
java-web-frameworks-comparison-spring-mvc- 
grails-vaadin-gwt-wicket-play-struts-and-jsf/
GWT Stats 
Come viene 
principalmente 
utilizzato
GWT Stats 
Browser & 
platform 
support.
GWT Stats 
GWT è 
molto usato in Europa
GWT Stats 
GWT 
why i love it ;-)
GWT Stats 
GWT 
the dark side
right for ?
GWT Stats 
as of Q4/2012 
● SDK downloaded over 1 million times 
● 100,000+ Active Developers 
● Deep Integration with Eclipse, IntelliJ, Spring STS/Roo 
● Used by Google products such as AdWords, Flights, 
Wallet 
● Fun things: GwtQuake, Angry Birds for the Web 
● GWT Today is a mature, high quality, code base.
... not a Framework 
Frameworks that may help 
https://github.com/ArcBees/GWTP 
model-view-presenter framework 
http://www.jboss.org/errai 
CDI, and JPA for GWT 
http://www.tessell.org/ 
app framework (on gwt-pectin)
Ecosystem 
Sencha’s GXT - http://www.sencha.com/products/gxt/ 
https://vaadin.com/gwt 
http://code.google.com/p/smartgwt/
Why 
Why?
FOSS 
The GWT Steering committee was founded in 2012 to help 
the GWT project become an even bigger success as an open 
source project. 
● Ray Cromwell, Google 
● Artur Signell, Vaadin 
● Colin Alworth, Sencha 
● Mike Brock, RedHat 
● Thomas Broyer 
● Stephen Haberman, Bizo 
● Daniel Kurka, Google 
● Christian Goudreau, Arcbees 
● Konstantin Solomatov, Jetbrains
Evolving & Mature 
Rev. Improvements 
2006 GWT 1.0 
2007 GWT 1.3/GWT 1.4 First Open Source Release, OSX support / JUnit and ImageBundle 
2008 GWT 1.5 Java 1.5 support, Overlay Types, DOM API, CSS Themes, Linkers 
2009 GWT 1.6/GWT 1.7 
GWT 2.0 
EventHandlers, EMMA Support, WAR support, Parallelized Builds/Newer 
browser support, IE8, GPE and AppEngine/DevMode, DraftCompile, 
UIBinder, LayoutPanel, CodeSplitter, ClientBundle, CssResource 
2010 GWT 2.1 RequestFactory, Editor Framework, Validation, MVP, Cell Widgets 
2011 GWT 2.2/GWT 2.3 
GWT 2.4 
GWT Designer, HTML5 support/Better AppEngine 
integration/Maven and RequestFactory enhancements 
2012 GWT 2.5 SuperDevMode, Elemental, UiRenderers, FragmentMerging, 
ClosureCompiler 
2013 GWT 2.5.1 ….
Browsers
Browsers
xché 
una codebase e 
tante 'incarnazioni' 
dell'applicazione.
Born to be ... 
Why GWT? The beginnings of rich internet 
applications started taking off in 2004-2005 with 
Gmail/Google Maps. jQuery didn't even exist yet. 
There was a vacuum for tools to build large scale 
web applications, and leveraging the already mature 
Java toolchain of IDEs, libraries, build tools, testing 
frameworks, made good sense. 
Ray Cromwell
Nowadays 
● Plethora of languages compiling to js (..., python, C/C++, 
Ocaml, Haskel, ...) 
● Good and awesome js libraries & frameworks 
Closure 
Tools
Secondo noi 
● non tutte le applicazioni sono uguali 
● ed alle volte alcune richiedono strumenti inustitati
GWT-Boofcv 
GWT-Boofcv sample at: 
http://goo.gl/3IJQgs
DEMO 
http://picshare.jooink.com
Marker Based AR http://code.google.com/p/gwt-webgl/ 
http://picshare.jooink.com 
http://code.google.com/p/gwt-nyartoolkit/
Mobile (& tab) too
Come Funziona 
<video/> 
<canvas/> 
Ny 
HTTP 
http://code.google.com/p/gwt-nyartoolkit/
java → GWT 
Using Java libraries into the 
browser
JS → GWT 
Using js libraries with java
Deeper 
Deeper.
Thanks 
Alberto Mancini 
alberto@jooink.com 
Francesca Tosi 
francesca@jooink.com

Contenu connexe

Tendances

Awesome Git Workflow for Agencies and Teams
Awesome Git Workflow for Agencies and TeamsAwesome Git Workflow for Agencies and Teams
Awesome Git Workflow for Agencies and TeamsChris Reynolds
 
How to start with Google Web Toolkit
How to start with Google Web ToolkitHow to start with Google Web Toolkit
How to start with Google Web ToolkitAlline Oliveira
 
Coding Google... you can do it!
Coding Google... you can do it!Coding Google... you can do it!
Coding Google... you can do it!wesley chun
 
Cross Platform Mobile Development for Business Applications
Cross Platform Mobile Development for Business ApplicationsCross Platform Mobile Development for Business Applications
Cross Platform Mobile Development for Business ApplicationsDavid Karlsson
 
EOY Project Pitch - Elaine Yeung
EOY Project Pitch - Elaine YeungEOY Project Pitch - Elaine Yeung
EOY Project Pitch - Elaine YeungElaine Yeung
 
WebKit-powered HTML overlays in your pipeline with GstWPE (GStreamer Conferen...
WebKit-powered HTML overlays in your pipeline with GstWPE (GStreamer Conferen...WebKit-powered HTML overlays in your pipeline with GstWPE (GStreamer Conferen...
WebKit-powered HTML overlays in your pipeline with GstWPE (GStreamer Conferen...Igalia
 
Exploring Google APIs with Python
Exploring Google APIs with PythonExploring Google APIs with Python
Exploring Google APIs with Pythonwesley chun
 
What you can do with GKE that you can't do with GAE
What you can do with GKE that you can't do with GAEWhat you can do with GKE that you can't do with GAE
What you can do with GKE that you can't do with GAELukas van Driel
 
QGIS UK: Developing with QGIS - What is possible (Lutra Consulting)
QGIS UK: Developing with QGIS - What is possible (Lutra Consulting)QGIS UK: Developing with QGIS - What is possible (Lutra Consulting)
QGIS UK: Developing with QGIS - What is possible (Lutra Consulting)Ross McDonald
 
Android build process (1)
Android build process (1)Android build process (1)
Android build process (1)Shubham Goyal
 
Goobi development overview
Goobi development overviewGoobi development overview
Goobi development overviewintranda GmbH
 
GWT - Building Rich Internet Applications Using OO Tools
GWT - Building Rich Internet Applications Using OO ToolsGWT - Building Rich Internet Applications Using OO Tools
GWT - Building Rich Internet Applications Using OO Toolsbarciszewski
 
Exploring Google APIs with Python & JavaScript
Exploring Google APIs with Python & JavaScriptExploring Google APIs with Python & JavaScript
Exploring Google APIs with Python & JavaScriptwesley chun
 
Jan reher may 2013
Jan reher may 2013Jan reher may 2013
Jan reher may 2013GR8Conf
 
Hybrid Desktop/Web applications with WebKitGTK+ (COSCUP 2010)
Hybrid Desktop/Web applications with WebKitGTK+ (COSCUP 2010)Hybrid Desktop/Web applications with WebKitGTK+ (COSCUP 2010)
Hybrid Desktop/Web applications with WebKitGTK+ (COSCUP 2010)Igalia
 
In defense of GWT-RPC By Colin Alworth
In defense of GWT-RPC By Colin AlworthIn defense of GWT-RPC By Colin Alworth
In defense of GWT-RPC By Colin AlworthGWTcon
 
Spring-batch Groovy y Gradle
Spring-batch Groovy y GradleSpring-batch Groovy y Gradle
Spring-batch Groovy y GradleAntonio Mas
 
Learning & Building Something New in July with Python -- PyGotham 2014
Learning &  Building Something New in July with Python -- PyGotham 2014Learning &  Building Something New in July with Python -- PyGotham 2014
Learning & Building Something New in July with Python -- PyGotham 2014drincruz
 

Tendances (20)

Awesome Git Workflow for Agencies and Teams
Awesome Git Workflow for Agencies and TeamsAwesome Git Workflow for Agencies and Teams
Awesome Git Workflow for Agencies and Teams
 
How to start with Google Web Toolkit
How to start with Google Web ToolkitHow to start with Google Web Toolkit
How to start with Google Web Toolkit
 
Google web toolkit
Google web toolkitGoogle web toolkit
Google web toolkit
 
Coding Google... you can do it!
Coding Google... you can do it!Coding Google... you can do it!
Coding Google... you can do it!
 
Jedi knight
Jedi knightJedi knight
Jedi knight
 
Cross Platform Mobile Development for Business Applications
Cross Platform Mobile Development for Business ApplicationsCross Platform Mobile Development for Business Applications
Cross Platform Mobile Development for Business Applications
 
EOY Project Pitch - Elaine Yeung
EOY Project Pitch - Elaine YeungEOY Project Pitch - Elaine Yeung
EOY Project Pitch - Elaine Yeung
 
WebKit-powered HTML overlays in your pipeline with GstWPE (GStreamer Conferen...
WebKit-powered HTML overlays in your pipeline with GstWPE (GStreamer Conferen...WebKit-powered HTML overlays in your pipeline with GstWPE (GStreamer Conferen...
WebKit-powered HTML overlays in your pipeline with GstWPE (GStreamer Conferen...
 
Exploring Google APIs with Python
Exploring Google APIs with PythonExploring Google APIs with Python
Exploring Google APIs with Python
 
What you can do with GKE that you can't do with GAE
What you can do with GKE that you can't do with GAEWhat you can do with GKE that you can't do with GAE
What you can do with GKE that you can't do with GAE
 
QGIS UK: Developing with QGIS - What is possible (Lutra Consulting)
QGIS UK: Developing with QGIS - What is possible (Lutra Consulting)QGIS UK: Developing with QGIS - What is possible (Lutra Consulting)
QGIS UK: Developing with QGIS - What is possible (Lutra Consulting)
 
Android build process (1)
Android build process (1)Android build process (1)
Android build process (1)
 
Goobi development overview
Goobi development overviewGoobi development overview
Goobi development overview
 
GWT - Building Rich Internet Applications Using OO Tools
GWT - Building Rich Internet Applications Using OO ToolsGWT - Building Rich Internet Applications Using OO Tools
GWT - Building Rich Internet Applications Using OO Tools
 
Exploring Google APIs with Python & JavaScript
Exploring Google APIs with Python & JavaScriptExploring Google APIs with Python & JavaScript
Exploring Google APIs with Python & JavaScript
 
Jan reher may 2013
Jan reher may 2013Jan reher may 2013
Jan reher may 2013
 
Hybrid Desktop/Web applications with WebKitGTK+ (COSCUP 2010)
Hybrid Desktop/Web applications with WebKitGTK+ (COSCUP 2010)Hybrid Desktop/Web applications with WebKitGTK+ (COSCUP 2010)
Hybrid Desktop/Web applications with WebKitGTK+ (COSCUP 2010)
 
In defense of GWT-RPC By Colin Alworth
In defense of GWT-RPC By Colin AlworthIn defense of GWT-RPC By Colin Alworth
In defense of GWT-RPC By Colin Alworth
 
Spring-batch Groovy y Gradle
Spring-batch Groovy y GradleSpring-batch Groovy y Gradle
Spring-batch Groovy y Gradle
 
Learning & Building Something New in July with Python -- PyGotham 2014
Learning &  Building Something New in July with Python -- PyGotham 2014Learning &  Building Something New in July with Python -- PyGotham 2014
Learning & Building Something New in July with Python -- PyGotham 2014
 

En vedette

DIY: Computer Vision with GWT.
DIY: Computer Vision with GWT.DIY: Computer Vision with GWT.
DIY: Computer Vision with GWT.JooinK
 
Go native benchmark test su dispositivi x86: java, ndk, ipp e tbb
Go native  benchmark test su dispositivi x86: java, ndk, ipp e tbbGo native  benchmark test su dispositivi x86: java, ndk, ipp e tbb
Go native benchmark test su dispositivi x86: java, ndk, ipp e tbbJooinK
 
Javascript as a target language - GWT KickOff - Part 2/2
Javascript as a target language - GWT KickOff - Part 2/2Javascript as a target language - GWT KickOff - Part 2/2
Javascript as a target language - GWT KickOff - Part 2/2JooinK
 
Augmented experience: Augmented Reality
Augmented experience: Augmented RealityAugmented experience: Augmented Reality
Augmented experience: Augmented RealityJooinK
 
Power-up your mobile & web App with WebRTC
Power-up your mobile & web App with WebRTCPower-up your mobile & web App with WebRTC
Power-up your mobile & web App with WebRTCJooinK
 
(Js) Export your own WebGL Viewer
(Js) Export your own WebGL Viewer(Js) Export your own WebGL Viewer
(Js) Export your own WebGL ViewerJooinK
 
Chuong 3 dong luc hoc he chat diem
Chuong 3 dong luc hoc he chat diemChuong 3 dong luc hoc he chat diem
Chuong 3 dong luc hoc he chat diemThu Thao
 

En vedette (7)

DIY: Computer Vision with GWT.
DIY: Computer Vision with GWT.DIY: Computer Vision with GWT.
DIY: Computer Vision with GWT.
 
Go native benchmark test su dispositivi x86: java, ndk, ipp e tbb
Go native  benchmark test su dispositivi x86: java, ndk, ipp e tbbGo native  benchmark test su dispositivi x86: java, ndk, ipp e tbb
Go native benchmark test su dispositivi x86: java, ndk, ipp e tbb
 
Javascript as a target language - GWT KickOff - Part 2/2
Javascript as a target language - GWT KickOff - Part 2/2Javascript as a target language - GWT KickOff - Part 2/2
Javascript as a target language - GWT KickOff - Part 2/2
 
Augmented experience: Augmented Reality
Augmented experience: Augmented RealityAugmented experience: Augmented Reality
Augmented experience: Augmented Reality
 
Power-up your mobile & web App with WebRTC
Power-up your mobile & web App with WebRTCPower-up your mobile & web App with WebRTC
Power-up your mobile & web App with WebRTC
 
(Js) Export your own WebGL Viewer
(Js) Export your own WebGL Viewer(Js) Export your own WebGL Viewer
(Js) Export your own WebGL Viewer
 
Chuong 3 dong luc hoc he chat diem
Chuong 3 dong luc hoc he chat diemChuong 3 dong luc hoc he chat diem
Chuong 3 dong luc hoc he chat diem
 

Similaire à Javascript as a target language - GWT kickoff - part1/2

Google web toolkit ( Gwt )
 Google web toolkit ( Gwt ) Google web toolkit ( Gwt )
Google web toolkit ( Gwt )Pankaj Bhasker
 
GWT + Gears : The browser is the platform
GWT + Gears : The browser is the platformGWT + Gears : The browser is the platform
GWT + Gears : The browser is the platformDidier Girard
 
DIY- computer vision with GWT
DIY- computer vision with GWTDIY- computer vision with GWT
DIY- computer vision with GWTFrancesca Tosi
 
Present and Future of GWT from a developer perspective
Present and Future of GWT from a developer perspectivePresent and Future of GWT from a developer perspective
Present and Future of GWT from a developer perspectiveManuel Carrasco Moñino
 
Introduction to Google Web Toolkit
Introduction to Google Web ToolkitIntroduction to Google Web Toolkit
Introduction to Google Web ToolkitDidier Girard
 
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13Fred Sauer
 
Rapid and Reliable Developing with HTML5 & GWT
Rapid and Reliable Developing with HTML5 & GWTRapid and Reliable Developing with HTML5 & GWT
Rapid and Reliable Developing with HTML5 & GWTManuel Carrasco Moñino
 
Mobile development with Flutter
Mobile development with FlutterMobile development with Flutter
Mobile development with FlutterAwok
 
Gwt training presentation
Gwt training presentationGwt training presentation
Gwt training presentationMUFIX Community
 
Introduction to Go
Introduction to GoIntroduction to Go
Introduction to GoSimon Hewitt
 
Mobile DevOps pipeline using Google Flutter
Mobile DevOps pipeline using Google FlutterMobile DevOps pipeline using Google Flutter
Mobile DevOps pipeline using Google FlutterAhmed Abu Eldahab
 
Building beautiful apps using google flutter
Building beautiful apps using google flutterBuilding beautiful apps using google flutter
Building beautiful apps using google flutterAhmed Abu Eldahab
 
GWT Training - Session 1/3
GWT Training - Session 1/3GWT Training - Session 1/3
GWT Training - Session 1/3Faiz Bashir
 
Apache Flex and the imperfect Web
Apache Flex and the imperfect WebApache Flex and the imperfect Web
Apache Flex and the imperfect Webmasuland
 

Similaire à Javascript as a target language - GWT kickoff - part1/2 (20)

Google web toolkit ( Gwt )
 Google web toolkit ( Gwt ) Google web toolkit ( Gwt )
Google web toolkit ( Gwt )
 
GWT + Gears : The browser is the platform
GWT + Gears : The browser is the platformGWT + Gears : The browser is the platform
GWT + Gears : The browser is the platform
 
DIY- computer vision with GWT
DIY- computer vision with GWTDIY- computer vision with GWT
DIY- computer vision with GWT
 
Google Web Toolkit
Google Web ToolkitGoogle Web Toolkit
Google Web Toolkit
 
Present and Future of GWT from a developer perspective
Present and Future of GWT from a developer perspectivePresent and Future of GWT from a developer perspective
Present and Future of GWT from a developer perspective
 
Introduction to Google Web Toolkit
Introduction to Google Web ToolkitIntroduction to Google Web Toolkit
Introduction to Google Web Toolkit
 
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
 
Rapid and Reliable Developing with HTML5 & GWT
Rapid and Reliable Developing with HTML5 & GWTRapid and Reliable Developing with HTML5 & GWT
Rapid and Reliable Developing with HTML5 & GWT
 
Mobile development with Flutter
Mobile development with FlutterMobile development with Flutter
Mobile development with Flutter
 
First Bucharest GTUG event 02 Mar 2010
First Bucharest GTUG event 02 Mar 2010First Bucharest GTUG event 02 Mar 2010
First Bucharest GTUG event 02 Mar 2010
 
Gwt training presentation
Gwt training presentationGwt training presentation
Gwt training presentation
 
Introduction to Go
Introduction to GoIntroduction to Go
Introduction to Go
 
GWT Architectures and Lessons Learned (WJAX 2013)
GWT Architectures and Lessons Learned (WJAX 2013)GWT Architectures and Lessons Learned (WJAX 2013)
GWT Architectures and Lessons Learned (WJAX 2013)
 
GWT Reloaded
GWT ReloadedGWT Reloaded
GWT Reloaded
 
Mobile DevOps pipeline using Google Flutter
Mobile DevOps pipeline using Google FlutterMobile DevOps pipeline using Google Flutter
Mobile DevOps pipeline using Google Flutter
 
Building beautiful apps using google flutter
Building beautiful apps using google flutterBuilding beautiful apps using google flutter
Building beautiful apps using google flutter
 
emerging
emergingemerging
emerging
 
emerging
emergingemerging
emerging
 
GWT Training - Session 1/3
GWT Training - Session 1/3GWT Training - Session 1/3
GWT Training - Session 1/3
 
Apache Flex and the imperfect Web
Apache Flex and the imperfect WebApache Flex and the imperfect Web
Apache Flex and the imperfect Web
 

Dernier

DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 

Dernier (20)

DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 

Javascript as a target language - GWT kickoff - part1/2

  • 1. Javascript as a target language: GWT Kickoff (Part 1/2) Alberto Mancini - Francesca Tosi alberto@jooink.com - francesca@jooink.com
  • 2. Alberto alberto@jooink.com http://github.com/jooink http://www.jooink.com http://jooink.blogspot.com
  • 3. Francesca francesca@jooink.com +FrancescaTosi @francescatosi http://github.com/jooink http://www.jooink.com http://jooink.blogspot.com
  • 4. GWT cos’è Google Web Toolkit (GWT) is an open source Java software development kit that makes writing AJAX applications like Google Maps and Gmail easy for developers. http://www.gwtproject.org/
  • 5. GWT Stats Official GWT Report by Vaadin [2012] - https://vaadin.com/gwt-report-2012- portlet/download/1871870899/Future-of-GWT-Report-2012. pdf [2013] - (del 10/04/2014 → GWT in crescita) https://vaadin.com/documents/10187/42fbbec4-51c8-426b- 8aa8-fe46129353a3
  • 6. GWT Stats E’ una delle librerie più utilizzate http://zeroturnaround.com/rebellabs/the-curious-coders- java-web-frameworks-comparison-spring-mvc- grails-vaadin-gwt-wicket-play-struts-and-jsf/
  • 7. GWT Stats Come viene principalmente utilizzato
  • 8. GWT Stats Browser & platform support.
  • 9. GWT Stats GWT è molto usato in Europa
  • 10. GWT Stats GWT why i love it ;-)
  • 11. GWT Stats GWT the dark side
  • 13. GWT Stats as of Q4/2012 ● SDK downloaded over 1 million times ● 100,000+ Active Developers ● Deep Integration with Eclipse, IntelliJ, Spring STS/Roo ● Used by Google products such as AdWords, Flights, Wallet ● Fun things: GwtQuake, Angry Birds for the Web ● GWT Today is a mature, high quality, code base.
  • 14. ... not a Framework Frameworks that may help https://github.com/ArcBees/GWTP model-view-presenter framework http://www.jboss.org/errai CDI, and JPA for GWT http://www.tessell.org/ app framework (on gwt-pectin)
  • 15. Ecosystem Sencha’s GXT - http://www.sencha.com/products/gxt/ https://vaadin.com/gwt http://code.google.com/p/smartgwt/
  • 17. FOSS The GWT Steering committee was founded in 2012 to help the GWT project become an even bigger success as an open source project. ● Ray Cromwell, Google ● Artur Signell, Vaadin ● Colin Alworth, Sencha ● Mike Brock, RedHat ● Thomas Broyer ● Stephen Haberman, Bizo ● Daniel Kurka, Google ● Christian Goudreau, Arcbees ● Konstantin Solomatov, Jetbrains
  • 18. Evolving & Mature Rev. Improvements 2006 GWT 1.0 2007 GWT 1.3/GWT 1.4 First Open Source Release, OSX support / JUnit and ImageBundle 2008 GWT 1.5 Java 1.5 support, Overlay Types, DOM API, CSS Themes, Linkers 2009 GWT 1.6/GWT 1.7 GWT 2.0 EventHandlers, EMMA Support, WAR support, Parallelized Builds/Newer browser support, IE8, GPE and AppEngine/DevMode, DraftCompile, UIBinder, LayoutPanel, CodeSplitter, ClientBundle, CssResource 2010 GWT 2.1 RequestFactory, Editor Framework, Validation, MVP, Cell Widgets 2011 GWT 2.2/GWT 2.3 GWT 2.4 GWT Designer, HTML5 support/Better AppEngine integration/Maven and RequestFactory enhancements 2012 GWT 2.5 SuperDevMode, Elemental, UiRenderers, FragmentMerging, ClosureCompiler 2013 GWT 2.5.1 ….
  • 21. xché una codebase e tante 'incarnazioni' dell'applicazione.
  • 22. Born to be ... Why GWT? The beginnings of rich internet applications started taking off in 2004-2005 with Gmail/Google Maps. jQuery didn't even exist yet. There was a vacuum for tools to build large scale web applications, and leveraging the already mature Java toolchain of IDEs, libraries, build tools, testing frameworks, made good sense. Ray Cromwell
  • 23. Nowadays ● Plethora of languages compiling to js (..., python, C/C++, Ocaml, Haskel, ...) ● Good and awesome js libraries & frameworks Closure Tools
  • 24. Secondo noi ● non tutte le applicazioni sono uguali ● ed alle volte alcune richiedono strumenti inustitati
  • 25. GWT-Boofcv GWT-Boofcv sample at: http://goo.gl/3IJQgs
  • 27. Marker Based AR http://code.google.com/p/gwt-webgl/ http://picshare.jooink.com http://code.google.com/p/gwt-nyartoolkit/
  • 29. Come Funziona <video/> <canvas/> Ny HTTP http://code.google.com/p/gwt-nyartoolkit/
  • 30. java → GWT Using Java libraries into the browser
  • 31. JS → GWT Using js libraries with java
  • 33. Thanks Alberto Mancini alberto@jooink.com Francesca Tosi francesca@jooink.com