SlideShare une entreprise Scribd logo
1  sur  105
GWT, die bessere Spinne für
 das Web?

papick g.taboada | pgt technology scouting GmbH
                                           1
GWT,
                  die bessere Spinne für das Web?



                         Mit welchem Framework soll ich das Web von
                         heute (und das von morgen) entwickeln?




© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
GWT,
                  die bessere Spinne für das Web?



                         Warum steckt Google soviel Kraft in GWT und
                         nicht in eine eigene JSF-Implementierung?




© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
GWT,
                  die bessere Spinne für das Web?


                         In diesem Vortrag werden verschiedene Aspekte
                         aus der Webentwicklung beleuchtet - unter
                         anderem Politik, Architektur, Produktivität,
                         Laufzeitumgebung, Skills - und erklärt, warum
                         GWT die bessere Spinne ist.




© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
GWT is better.
‣ The Web?
          ‣ RIAs - The architectural shift
          ‣ Standards?
Session   ‣ Developing smarter
Topics
Web 2.0, 3.0 ?!?
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Web 2.0 by apps?
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Web 2.0 by buzzwords?
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Web 2.0 by technologies?
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Web 2.0 by what we see
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Mashups
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
But how?!?
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
XML
                                                                      JavaScript
                              HTML
                                                                              DOM/ DOM-Scripting

                               XMLHttpRequest
                                                                                   JSON




                                                 Dynamic HTML
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
copyright 2006, Leland Scott, Musings from Mars
                          Native DHTML speakers
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
The Ajax
        slippery slope
            ‣ Try “a little bit of script”
            ‣ Every body loves it!
             ‣ More!!!
               ‣ Errr - Do we know
                  Javascript?
            ‣ Does it work with…
               ‣ Wait – this is hard!
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Fear browsers
          with all of mind,
          body and spirit
                                  When in danger,
                                  when in doubt,
                                   run in circles
                                  cry and shout




© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
HTML5                                       Chrome            Firefox   Safari   Opera

                             canvas
                               video
              geolocation
                     appcache
                       database
                                                                                                      Vic Gundotra
                        workers                                                                  Google IO Keynote




                         HTML 5 here and now
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
‣ The Web?
           ‣ RIAs - The architectural
              shift

Session   ‣ Standards?
Topics    ‣ Developing smarter
The web THEN
               and now
         Browsers where dumb html
          terminals
         High server side resource
          consumption




© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Browser                             Server


            event


                      espo    nse
          full html r

             event


                        spo   nse
          fu ll html re


             event


                        spo   nse
          fu ll html re
Browser                             Server


            event


                      espo    nse
          full html r

             event


                        spo   nse
          fu ll html re


             event


                        spo   nse
          fu ll html re
Browser                             Server


            event


                      espo    nse
          full html r

             event


                        spo   nse
          fu ll html re


             event


                        spo   nse
          fu ll html re
Browser                             Server


            event


                      espo    nse
          full html r

             event


                        spo   nse
          fu ll html re


             event


                        spo   nse
          fu ll html re
134 Requests

1/2 MB Download


THAT WAS ONE
  REQUEST!!!
Caching helps, partially
something to
                  remember
                                   measuring web
                                    performance

                                                    is

                                         measuring
                                          latency

© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
The web then
                 and NOW
           Rich user interfaces in the
            Browser
           Server resource consumption
            reduced to a minimum




© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
The „ajax“ architectural shift
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Browser                               Server
                      first reques
                                       t


                              e sp   o n se
                  full html r
event



event

                    data reque
                                  st
event

                           data
event
                      data reque
                                       st


                           data
JAX
                              honour the A in AJAX
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
AJAX stands for
                                                                          Asynchronous
                                                                       JavaScript and XML




                                                                      JAX
                              honour the A in AJAX
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
AJAX stands for
                                                                         Asynchronous
                                                                      JavaScript and XML




                                                                      JAX
                              honour the A in AJAX
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
AJAX stands for
                                                                         Asynchronous        or
                                                                      JavaScript and XML   JSON...




                                                                      JAX
                              honour the A in AJAX
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
D HT M L
http://breganzane.com/blog/snfl.php




                                            Ajaxifying Webapps
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
http://breganzane.com/blog/snfl.php




                                            Ajaxifying Webapps
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
RPC




                                 RIAs == Rich Clients
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
yes we can!
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
http://www.javaworld.com/javaworld/jw-07-2003/jw-0725-designpatterns.html




© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
http://www.javaworld.com/javaworld/jw-07-2003/jw-0725-designpatterns.html




© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
architectural freedom
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
know-how?
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
yes, we can.
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Eventbus,
      Model-View-Presenter,
      Command Pattern,
      Dependency Injection...




                    Ray Ryan - lessons learned
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
‣ The Web?
          ‣ RIAs - The architectural shift
           ‣ Standards?
Session   ‣ Developing smarter
Topics
http://de.wikipedia.org/wiki/   Standard


• De-facto- oder Quasi-Standards
• Industriestandard
• Herstellerspezifische Standards
• Offener Standard
Java Web Standard?

                  Industriestandard
• Java EE ist ein De-facto oder Quasi-Standard in
  der Entwicklung von unternehmenskritischen
  Anwendungen
             Standard
• JSF Spezifikation ist Teil der Java EE Spezifikation
To JSF or not to JSF,
 that‘s the question
http://de.wikipedia.org/wiki/   Proprietär

• Juristisch „urheberrechtlich geschützt“
• IT: Dinge, die nicht allgemein anerkannten
  Standards entsprechen („hauseigene
  Entwicklungen“)

• Freie-Software-Bewegung: alles was nicht frei
  (Lizenztechnisch) und Quelloffen ist.
WEB Standards   Java EE Standards




                                   klassische
                                  dynamische
RIAs
                                  Webanwend
                                     ungen




         Where is the magic?
GWT & Standards
cloud

    HTML5
                       IE6
             IE10
                  IE9
   HTML4
             JS
                      Support
     Websphere
     5... 6... 7...
                Mobile



Zukunftsicherheit
gibts nicht.
Gewährleistung

Herstellerunabhängigkeit?
Herstellersupport
gibts nicht.
JBoss

Sencha
          Google                      (RichFaces)

(GXT)    GWT                    Prime Technology    JSF
                                  (PrimeFaces)
          Isomorphic Software
             (Smart GWT)                           Icesoft Technologies
                                                        (IceFaces)




                      Blau oder Rot?
google is „dogfooding“
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
there is some commitment
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
there are some commiters
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
‣ The Web?
          ‣ RIAs - The architectural shift
          ‣ Standards?
Session    ‣ Developing smarter
Topics
Google Web Toolkit
                  	

 Google Web Toolkit (GWT) is an open source Java
                      development framework that lets you escape the matrix
                      of technologies that make writing AJAX applications so
                      difficult and error prone.


                  	

 With GWT, you can develop and debug AJAX
                      applications in the Java language using the Java
                      development tools of your choice. When you deploy
                      your application to production, the GWT compiler
                      translates your Java application to browser-compliant
                      JavaScript and HTML.


© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
GWT
                  	

 Google Web Toolkit (GWT) is an open source Java
                      development framework that lets you escape the matrix
                      of technologies that make writing AJAX applications so
                      difficult and error prone.


                  	

 With GWT, you can develop and debug AJAX
                      applications in the Java language using the Java
                      development tools of your choice. When you deploy
                      your application to production, the GWT compiler
                      translates your Java application to browser-compliant
                      JavaScript and HTML.


© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Standalone JS apps
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
JS app can be anything
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
GWT designer                                   Plugin for Eclipse




                                                                          Speed Tracer
                              SDK


                                                                      unboxing
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
GWT SDK
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
development cycle
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Develop in Java
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Develop in Java
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Checkstyle




                                                   Develop in Java
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Checkstyle

                                                                      Findbugs,
                                                                        PMD




                                                   Develop in Java
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Checkstyle

                                                                      Findbugs,
                                                                        PMD

                                                                       Patterns




                                                   Develop in Java
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Checkstyle

                                                                       Findbugs,
                                                                         PMD

                                                                       Patterns

                                                                      Unit testing




                                                   Develop in Java
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Checkstyle

                                                                       Findbugs,
                                                                         PMD

                                                                       Patterns

                                                                      Unit testing

                                                                      Refactoring!




                                                   Develop in Java
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
it‘s about engineering
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
One click start
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Use the webapp
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Debug in Java
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Cross compile to JS
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Distribute
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
GWT does
             more than just
               compile.
                                        Much more.

                               The sky is the limit?




© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
connection bottleneck
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Helping where help is needed
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Sprites
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
!=


                           project layout vs. deployment layout
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Developer guided splits
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Splitting the app
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Generated deferred JS
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
GWT is
                           extensible
                                 Module concept
                              Extensible GUI model
                                Code Generator
                                       JSNI




© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
GWT is better.
Better for business
• Sponsored/ developed by Google
                      • Apache 2 license
                      • Leverage Java knowledge for RIA development
                      • Software engineering suitable for product
                             development




© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Better for developers
• End to end debugging
                      • No package/ deploy roundtrips
                      • Leverage Java knowledge and tooling



© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Better for performance
• Split points reduce initial download
                      • Minimal server load by just loading data
                      • Reduced number of requests
                      • Uses client/ browser resources to free up server
                             resources




© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Better for architects
• Build-What-You-Need (tm)
                      • Leverage browser capabilities



© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
Thanks!
© 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de

Contenu connexe

Similaire à Gwt, die bessere spinne

2011 Mobile & Web technologies
2011 Mobile & Web technologies 2011 Mobile & Web technologies
2011 Mobile & Web technologies JungHyuk Kwon
 
Javascript as a target language - GWT kickoff - part1/2
Javascript as a target language - GWT kickoff - part1/2Javascript as a target language - GWT kickoff - part1/2
Javascript as a target language - GWT kickoff - part1/2JooinK
 
Hello 1 2 3, can you see me now?
Hello 1 2 3, can you see me now?Hello 1 2 3, can you see me now?
Hello 1 2 3, can you see me now?Kundan Singh
 
My freelance experience
My freelance experienceMy freelance experience
My freelance experiencetraditio
 
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
 
NLP for videos: Understanding customers' feelings in videos - Albert Lewandow...
NLP for videos: Understanding customers' feelings in videos - Albert Lewandow...NLP for videos: Understanding customers' feelings in videos - Albert Lewandow...
NLP for videos: Understanding customers' feelings in videos - Albert Lewandow...GetInData
 
Javaland 2014 / GWT architectures and lessons learned
Javaland 2014 / GWT architectures and lessons learnedJavaland 2014 / GWT architectures and lessons learned
Javaland 2014 / GWT architectures and lessons learnedpgt technology scouting GmbH
 
The need for Speed: Advanced #webperf - SEOday 2018
The need for Speed: Advanced #webperf - SEOday 2018The need for Speed: Advanced #webperf - SEOday 2018
The need for Speed: Advanced #webperf - SEOday 2018Bastian Grimm
 
Apache Flex and the imperfect Web
Apache Flex and the imperfect WebApache Flex and the imperfect Web
Apache Flex and the imperfect Webmasuland
 
Industry-ready NLP Service Framework Based on Kafka (Bernhard Waltl and Georg...
Industry-ready NLP Service Framework Based on Kafka (Bernhard Waltl and Georg...Industry-ready NLP Service Framework Based on Kafka (Bernhard Waltl and Georg...
Industry-ready NLP Service Framework Based on Kafka (Bernhard Waltl and Georg...confluent
 
Overview of webSpoon @ Pentaho Bay Area Meetup
Overview of webSpoon @ Pentaho Bay Area MeetupOverview of webSpoon @ Pentaho Bay Area Meetup
Overview of webSpoon @ Pentaho Bay Area MeetupHiromu Hota
 
Svelte the future of frontend development
Svelte   the future of frontend developmentSvelte   the future of frontend development
Svelte the future of frontend developmenttwilson63
 
Gregor Hohpe Track Intro The Cloud As Middle Ware
Gregor Hohpe Track Intro The Cloud As Middle WareGregor Hohpe Track Intro The Cloud As Middle Ware
Gregor Hohpe Track Intro The Cloud As Middle Waredeimos
 
Cutting edge of web technology
Cutting edge of web technologyCutting edge of web technology
Cutting edge of web technologyTsutomu Ogasawara
 
HTML5 Technical Executive Summary
HTML5 Technical Executive SummaryHTML5 Technical Executive Summary
HTML5 Technical Executive SummaryGilad Khen
 

Similaire à Gwt, die bessere spinne (20)

2011 Mobile & Web technologies
2011 Mobile & Web technologies 2011 Mobile & Web technologies
2011 Mobile & Web technologies
 
Example using LattePanda
Example using LattePandaExample using LattePanda
Example using LattePanda
 
Html5 tx - preso
Html5 tx - presoHtml5 tx - preso
Html5 tx - preso
 
Javascript as a target language - GWT kickoff - part1/2
Javascript as a target language - GWT kickoff - part1/2Javascript as a target language - GWT kickoff - part1/2
Javascript as a target language - GWT kickoff - part1/2
 
Deep dive into serverless on Google Cloud
Deep dive into serverless on Google CloudDeep dive into serverless on Google Cloud
Deep dive into serverless on Google Cloud
 
Hello 1 2 3, can you see me now?
Hello 1 2 3, can you see me now?Hello 1 2 3, can you see me now?
Hello 1 2 3, can you see me now?
 
My freelance experience
My freelance experienceMy freelance experience
My freelance experience
 
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
 
Phonegap
PhonegapPhonegap
Phonegap
 
NLP for videos: Understanding customers' feelings in videos - Albert Lewandow...
NLP for videos: Understanding customers' feelings in videos - Albert Lewandow...NLP for videos: Understanding customers' feelings in videos - Albert Lewandow...
NLP for videos: Understanding customers' feelings in videos - Albert Lewandow...
 
Javaland 2014 / GWT architectures and lessons learned
Javaland 2014 / GWT architectures and lessons learnedJavaland 2014 / GWT architectures and lessons learned
Javaland 2014 / GWT architectures and lessons learned
 
The need for Speed: Advanced #webperf - SEOday 2018
The need for Speed: Advanced #webperf - SEOday 2018The need for Speed: Advanced #webperf - SEOday 2018
The need for Speed: Advanced #webperf - SEOday 2018
 
Apache Flex and the imperfect Web
Apache Flex and the imperfect WebApache Flex and the imperfect Web
Apache Flex and the imperfect Web
 
Industry-ready NLP Service Framework Based on Kafka (Bernhard Waltl and Georg...
Industry-ready NLP Service Framework Based on Kafka (Bernhard Waltl and Georg...Industry-ready NLP Service Framework Based on Kafka (Bernhard Waltl and Georg...
Industry-ready NLP Service Framework Based on Kafka (Bernhard Waltl and Georg...
 
Overview of webSpoon @ Pentaho Bay Area Meetup
Overview of webSpoon @ Pentaho Bay Area MeetupOverview of webSpoon @ Pentaho Bay Area Meetup
Overview of webSpoon @ Pentaho Bay Area Meetup
 
Svelte the future of frontend development
Svelte   the future of frontend developmentSvelte   the future of frontend development
Svelte the future of frontend development
 
Gregor Hohpe Track Intro The Cloud As Middle Ware
Gregor Hohpe Track Intro The Cloud As Middle WareGregor Hohpe Track Intro The Cloud As Middle Ware
Gregor Hohpe Track Intro The Cloud As Middle Ware
 
Cutting edge of web technology
Cutting edge of web technologyCutting edge of web technology
Cutting edge of web technology
 
HTML5 Technical Executive Summary
HTML5 Technical Executive SummaryHTML5 Technical Executive Summary
HTML5 Technical Executive Summary
 
HTML 5
HTML 5HTML 5
HTML 5
 

Dernier

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 

Dernier (20)

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 

Gwt, die bessere spinne

  • 1. GWT, die bessere Spinne für das Web? papick g.taboada | pgt technology scouting GmbH 1
  • 2. GWT, die bessere Spinne für das Web? Mit welchem Framework soll ich das Web von heute (und das von morgen) entwickeln? © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 3. GWT, die bessere Spinne für das Web? Warum steckt Google soviel Kraft in GWT und nicht in eine eigene JSF-Implementierung? © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 4. GWT, die bessere Spinne für das Web? In diesem Vortrag werden verschiedene Aspekte aus der Webentwicklung beleuchtet - unter anderem Politik, Architektur, Produktivität, Laufzeitumgebung, Skills - und erklärt, warum GWT die bessere Spinne ist. © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 6. ‣ The Web? ‣ RIAs - The architectural shift ‣ Standards? Session ‣ Developing smarter Topics
  • 7. Web 2.0, 3.0 ?!? © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 8. Web 2.0 by apps? © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 9. Web 2.0 by buzzwords? © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 10. Web 2.0 by technologies? © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 11. Web 2.0 by what we see © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 12. Mashups © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 13. But how?!? © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 14. XML JavaScript HTML DOM/ DOM-Scripting XMLHttpRequest JSON Dynamic HTML © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 15. copyright 2006, Leland Scott, Musings from Mars Native DHTML speakers © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 16. The Ajax slippery slope ‣ Try “a little bit of script” ‣ Every body loves it! ‣ More!!! ‣ Errr - Do we know Javascript? ‣ Does it work with… ‣ Wait – this is hard! © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 17. Fear browsers with all of mind, body and spirit When in danger, when in doubt, run in circles cry and shout © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 18. HTML5 Chrome Firefox Safari Opera canvas video geolocation appcache database Vic Gundotra workers Google IO Keynote HTML 5 here and now © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 19. ‣ The Web? ‣ RIAs - The architectural shift Session ‣ Standards? Topics ‣ Developing smarter
  • 20. The web THEN and now  Browsers where dumb html terminals  High server side resource consumption © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 21. Browser Server event espo nse full html r event spo nse fu ll html re event spo nse fu ll html re
  • 22. Browser Server event espo nse full html r event spo nse fu ll html re event spo nse fu ll html re
  • 23. Browser Server event espo nse full html r event spo nse fu ll html re event spo nse fu ll html re
  • 24. Browser Server event espo nse full html r event spo nse fu ll html re event spo nse fu ll html re
  • 25.
  • 26. 134 Requests 1/2 MB Download THAT WAS ONE REQUEST!!!
  • 28. something to remember measuring web performance is measuring latency © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 29. The web then and NOW  Rich user interfaces in the Browser  Server resource consumption reduced to a minimum © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 30. The „ajax“ architectural shift © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 31. Browser Server first reques t e sp o n se full html r event event data reque st event data event data reque st data
  • 32.
  • 33. JAX honour the A in AJAX © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 34. AJAX stands for Asynchronous JavaScript and XML JAX honour the A in AJAX © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 35. AJAX stands for Asynchronous JavaScript and XML JAX honour the A in AJAX © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 36. AJAX stands for Asynchronous or JavaScript and XML JSON... JAX honour the A in AJAX © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 37.
  • 38. D HT M L
  • 39. http://breganzane.com/blog/snfl.php Ajaxifying Webapps © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 40. http://breganzane.com/blog/snfl.php Ajaxifying Webapps © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 41. RPC RIAs == Rich Clients © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 42. yes we can! © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 43. © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 44. http://www.javaworld.com/javaworld/jw-07-2003/jw-0725-designpatterns.html © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 45. http://www.javaworld.com/javaworld/jw-07-2003/jw-0725-designpatterns.html © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 46. architectural freedom © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 47. know-how? © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 48. yes, we can. © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 49. Eventbus, Model-View-Presenter, Command Pattern, Dependency Injection... Ray Ryan - lessons learned © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 50. ‣ The Web? ‣ RIAs - The architectural shift ‣ Standards? Session ‣ Developing smarter Topics
  • 51.
  • 52. http://de.wikipedia.org/wiki/ Standard • De-facto- oder Quasi-Standards • Industriestandard • Herstellerspezifische Standards • Offener Standard
  • 53. Java Web Standard? Industriestandard • Java EE ist ein De-facto oder Quasi-Standard in der Entwicklung von unternehmenskritischen Anwendungen Standard • JSF Spezifikation ist Teil der Java EE Spezifikation
  • 54. To JSF or not to JSF, that‘s the question
  • 55. http://de.wikipedia.org/wiki/ Proprietär • Juristisch „urheberrechtlich geschützt“ • IT: Dinge, die nicht allgemein anerkannten Standards entsprechen („hauseigene Entwicklungen“) • Freie-Software-Bewegung: alles was nicht frei (Lizenztechnisch) und Quelloffen ist.
  • 56. WEB Standards Java EE Standards klassische dynamische RIAs Webanwend ungen Where is the magic?
  • 58. cloud HTML5 IE6 IE10 IE9 HTML4 JS Support Websphere 5... 6... 7... Mobile Zukunftsicherheit
  • 62. JBoss Sencha Google (RichFaces) (GXT) GWT Prime Technology JSF (PrimeFaces) Isomorphic Software (Smart GWT) Icesoft Technologies (IceFaces) Blau oder Rot?
  • 63. google is „dogfooding“ © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 64. there is some commitment © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 65. there are some commiters © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 66. ‣ The Web? ‣ RIAs - The architectural shift ‣ Standards? Session ‣ Developing smarter Topics
  • 67. Google Web Toolkit Google Web Toolkit (GWT) is an open source Java development framework that lets you escape the matrix of technologies that make writing AJAX applications so difficult and error prone. With GWT, you can develop and debug AJAX applications in the Java language using the Java development tools of your choice. When you deploy your application to production, the GWT compiler translates your Java application to browser-compliant JavaScript and HTML. © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 68. GWT Google Web Toolkit (GWT) is an open source Java development framework that lets you escape the matrix of technologies that make writing AJAX applications so difficult and error prone. With GWT, you can develop and debug AJAX applications in the Java language using the Java development tools of your choice. When you deploy your application to production, the GWT compiler translates your Java application to browser-compliant JavaScript and HTML. © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 69. Standalone JS apps © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 70. JS app can be anything © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 71. GWT designer Plugin for Eclipse Speed Tracer SDK unboxing © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 72. GWT SDK © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 73. development cycle © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 74. Develop in Java © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 75. Develop in Java © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 76. Checkstyle Develop in Java © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 77. Checkstyle Findbugs, PMD Develop in Java © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 78. Checkstyle Findbugs, PMD Patterns Develop in Java © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 79. Checkstyle Findbugs, PMD Patterns Unit testing Develop in Java © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 80. Checkstyle Findbugs, PMD Patterns Unit testing Refactoring! Develop in Java © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 81. it‘s about engineering © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 82. One click start © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 83. Use the webapp © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 84. Debug in Java © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 85. Cross compile to JS © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 86. Distribute © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 87. GWT does more than just compile.  Much more.  The sky is the limit? © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 88. connection bottleneck © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 89. Helping where help is needed © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 90. Sprites © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 91. != project layout vs. deployment layout © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 92. Developer guided splits © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 93. Splitting the app © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 94. Generated deferred JS © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 95. GWT is extensible  Module concept  Extensible GUI model  Code Generator  JSNI © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 98. • Sponsored/ developed by Google • Apache 2 license • Leverage Java knowledge for RIA development • Software engineering suitable for product development © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 100. • End to end debugging • No package/ deploy roundtrips • Leverage Java knowledge and tooling © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 102. • Split points reduce initial download • Minimal server load by just loading data • Reduced number of requests • Uses client/ browser resources to free up server resources © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 104. • Build-What-You-Need (tm) • Leverage browser capabilities © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de
  • 105. Thanks! © 2011 P. G. Taboada | pgt technology scouting GmbH | http://pgt.de