<?xml version="1.0" encoding="utf-8"?>
<!-- generator="FeedCreator 1.7.2-ppt DokuWiki" -->
<?xml-stylesheet href="http://www.drazzib.com/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="http://www.drazzib.com/feed.php">
        <title>DrazziB Website blog</title>
        <description></description>
        <link>http://www.drazzib.com/</link>
        <image rdf:resource="http://www.drazzib.com/lib/images/favicon.ico" />
       <dc:date>2010-09-02T23:29:15+02:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="http://www.drazzib.com/blog:2009_11_17_nantes_jug_technologies_google"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="http://www.drazzib.com/lib/images/favicon.ico">
        <title>DrazziB Website</title>
        <link>http://www.drazzib.com/</link>
        <url>http://www.drazzib.com/lib/images/favicon.ico</url>
    </image>
    <item rdf:about="http://www.drazzib.com/blog:2009_11_17_nantes_jug_technologies_google">
        <dc:format>text/html</dc:format>
        <dc:date>2010-04-02T00:34:50+02:00</dc:date>
        <dc:creator>drazzib</dc:creator>
        <title>Nantes JUG Technologies Google</title>
        <link>http://www.drazzib.com/blog:2009_11_17_nantes_jug_technologies_google</link>
        <description>


&lt;h1&gt;&lt;a name=&quot;nantes_jug_technologies_google&quot; id=&quot;nantes_jug_technologies_google&quot;&gt;Nantes JUG Technologies Google&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;

Android, AppEngine, GWT, Wave autant de technologies Google qui font l&amp;#039;actualité…
La preuve ? plus de 80 personnes étaient présentes à la dernière présentation du &lt;a href=&quot;http://www.nantesjug.org/&quot; class=&quot;urlextern&quot; title=&quot;http://www.nantesjug.org/&quot;&gt;NantesJUG&lt;/a&gt; intitulée “Soirée Spéciale Google Technologies”.
Didier Girard (&lt;a href=&quot;http://www.sfeir.com/&quot; class=&quot;urlextern&quot; title=&quot;http://www.sfeir.com/&quot;&gt;SFEIR&lt;/a&gt;) nous faisait l&amp;#039;honneur de faire un arrêt à Nantes pour son &lt;a href=&quot;http://www.application-servers.com/post/2009/11/05/Un-petit-JUGing-avec-les-technologies-Google-ndash%3B-RTSVP&quot; class=&quot;urlextern&quot; title=&quot;http://www.application-servers.com/post/2009/11/05/Un-petit-JUGing-avec-les-technologies-Google-ndash%3B-RTSVP&quot;&gt;JUGing&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;

Je dois dire que j&amp;#039;ai été agréablement surpris par la qualité de l&amp;#039;intervenant : des explications simples, une très bonne maitrise des sujets, et une forte interaction avec le public.
Ainsi, cette présentation était accompagnée de nombreuses démonstrations, ponctuées de “clap, clap, clap” ou de “bouuuhh” suivant le succès de chacune d&amp;#039;elle :)
Didier était accompagné de Salvador Diaz (freelance) sur la partie GWT2.
&lt;/p&gt;

&lt;p&gt;

Photos :
&lt;a href=&quot;http://picasaweb.google.com/diaz.salvador/NantesJUG&quot; class=&quot;urlextern&quot; title=&quot;http://picasaweb.google.com/diaz.salvador/NantesJUG&quot;&gt;http://picasaweb.google.com/diaz.salvador/NantesJUG&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Pour ceux qui n&amp;#039;étaient pas présents à cette présentation, voici mes notes :
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Nantes JUG Technologies Google&quot; [1-1120] --&gt;
&lt;h2&gt;&lt;a name=&quot;architecture_google&quot; id=&quot;architecture_google&quot;&gt;Architecture Google&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;

“Le Cloud, rien que le Cloud.”
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Objectif: mettre à disposition les technologies utilisées par Google en interne pour en
faire profiter les gens… et bien sûr monétiser ces technologies .&lt;/strong&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Architecture Google&quot; [1121-1350] --&gt;
&lt;h3&gt;&lt;a name=&quot;lexique&quot; id=&quot;lexique&quot;&gt;Lexique&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; IaaS : Location d&amp;#039;infrastructure (serveur, bande passante)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; PaaS : Location de plateforme (container J2EE, stockage)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://fr.wikipedia.org/wiki/SaaS&quot; class=&quot;interwiki iw_wp&quot; title=&quot;http://fr.wikipedia.org/wiki/SaaS&quot;&gt;SaaS&lt;/a&gt; : location de service (application verticale)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
“De la machine au software, louer ce dont on a besoin”
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Lexique&quot; [1351-1610] --&gt;
&lt;h3&gt;&lt;a name=&quot;vision&quot; id=&quot;vision&quot;&gt;Vision&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;/div&gt;

&lt;h4&gt;&lt;a name=&quot;openweb&quot; id=&quot;openweb&quot;&gt;OpenWeb&lt;/a&gt;&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Chrome!&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Support de HTML5&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Les applications RIA oui, mais uniquement avec des standards&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;

&lt;h4&gt;&lt;a name=&quot;roa&quot; id=&quot;roa&quot;&gt;ROA&lt;/a&gt;&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/Resource_oriented_architecture&quot; class=&quot;urlextern&quot; title=&quot;http://en.wikipedia.org/wiki/Resource_oriented_architecture&quot;&gt;ROA&lt;/a&gt; Ressource Oriented Application&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; 1 ressource = 1 url&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://fr.wikipedia.org/wiki/REST&quot; class=&quot;interwiki iw_wp&quot; title=&quot;http://fr.wikipedia.org/wiki/REST&quot;&gt;REST&lt;/a&gt; &lt;a href=&quot;http://www.pompage.net/pompe/comment-j-ai-explique-rest-a-ma-femme/&quot; class=&quot;urlextern&quot; title=&quot;http://www.pompage.net/pompe/comment-j-ai-explique-rest-a-ma-femme/&quot;&gt;http://www.pompage.net/pompe/comment-j-ai-explique-rest-a-ma-femme/&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Pour les applications “single pages bootstrap” (ex: gmail), on utilise le # dans l&amp;#039;&lt;acronym title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/acronym&gt; pour indiquer la ressource à utiliser&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;

A écouter : &lt;a href=&quot;http://lescastcodeurs.com/&quot; class=&quot;urlextern&quot; title=&quot;http://lescastcodeurs.com/&quot;&gt;http://lescastcodeurs.com/&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Vision&quot; [1611-2141] --&gt;
&lt;h2&gt;&lt;a name=&quot;google_app_engine&quot; id=&quot;google_app_engine&quot;&gt;Google App Engine&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://code.google.com/intl/fr/appengine/&quot; class=&quot;urlextern&quot; title=&quot;http://code.google.com/intl/fr/appengine/&quot;&gt;Google App Engine&lt;/a&gt; est une plateforme d&amp;#039;hébergement d&amp;#039;&lt;a href=&quot;http://code.google.com/intl/fr/appengine/docs/java/runtime.html&quot; class=&quot;urlextern&quot; title=&quot;http://code.google.com/intl/fr/appengine/docs/java/runtime.html&quot;&gt;applications Java&lt;/a&gt;, sur les serveurs de Google.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;http://code.google.com/intl/fr/appengine/docs/java/jrewhitelist.html&quot; class=&quot;urlextern&quot; title=&quot;http://code.google.com/intl/fr/appengine/docs/java/jrewhitelist.html&quot;&gt;Une partie de l&amp;#039;API Java standard&lt;/a&gt; est disponible, ce qui rend potentiellement hébergeable beaucoup d&amp;#039;application Java existantes.
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Plugin Eclipse fournit par Google :&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
    &lt;a href=&quot;http://code.google.com/intl/fr/eclipse/&quot; class=&quot;urlextern&quot; title=&quot;http://code.google.com/intl/fr/eclipse/&quot;&gt;http://code.google.com/intl/fr/eclipse/&lt;/a&gt;

&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Philosophie NoSQL: stockage dans &lt;a href=&quot;http://fr.wikipedia.org/wiki/BigTable&quot; class=&quot;interwiki iw_wp&quot; title=&quot;http://fr.wikipedia.org/wiki/BigTable&quot;&gt;BigTable&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
    Accès par l&amp;#039;api &lt;a href=&quot;http://fr.wikipedia.org/wiki/JDO&quot; class=&quot;interwiki iw_wp&quot; title=&quot;http://fr.wikipedia.org/wiki/JDO&quot;&gt;JDO&lt;/a&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Déploiement “One-Click”&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
    1000 déploiement autorisé par jour (large !)

&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Pub google :&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; 5 millions de pages vues par mois au maximum&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Réalité :&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; grosse limitation de bande passante (1Go / jour)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;

Il est possible de donner une limite de facturation par jour (genre 2$ par jour)
&lt;/p&gt;

&lt;p&gt;
Il faut intégrer AppEngine (le Cloud Computing en général) dans nos choix d&amp;#039;architecture.

&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Exemple évident : campagne marketing, avec mini-site dynamique.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Problématique “complexe” sans le Cloud Computing :&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Quelle volumétrie attendre ?&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Pourquoi monter 30 serveurs pour ne plus en avoir besoin 10 jours plus tard ?&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Google App Engine&quot; [2142-3410] --&gt;
&lt;h3&gt;&lt;a name=&quot;donnees_confidentielles_chez_google&quot; id=&quot;donnees_confidentielles_chez_google&quot;&gt;Données confidentielles chez Google ?&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://code.google.com/intl/fr/securedataconnector/&quot; class=&quot;urlextern&quot; title=&quot;http://code.google.com/intl/fr/securedataconnector/&quot;&gt;SDC&lt;/a&gt; : ouvrir un port 80 de façon indéfini vers google : un simple tunneling &lt;acronym title=&quot;Hyper Text Transfer Protocol&quot;&gt;HTTP&lt;/acronym&gt;
&lt;/p&gt;

&lt;p&gt;
Diagramme de l&amp;#039;intégration de SDC dans la stack Google AppEngine :
&lt;a href=&quot;http://www.drazzib.com/lib/exe/fetch.php?cache=cache&amp;amp;media=http%3A%2F%2Fi.zdnet.com%2Fblogs%2Fgae_for_enterprise.png&quot; class=&quot;media&quot; title=&quot;http://i.zdnet.com/blogs/gae_for_enterprise.png&quot;&gt;&lt;img src=&quot;http://www.drazzib.com/lib/exe/fetch.php?w=250&amp;amp;h=&amp;amp;cache=cache&amp;amp;media=http%3A%2F%2Fi.zdnet.com%2Fblogs%2Fgae_for_enterprise.png&quot; class=&quot;mediacenter&quot; alt=&quot;&quot; width=&quot;250&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Données confidentielles chez Google ?&quot; [3411-3726] --&gt;
&lt;h3&gt;&lt;a name=&quot;adherence_avec_les_api_proprio_de_google&quot; id=&quot;adherence_avec_les_api_proprio_de_google&quot;&gt;Adhérence avec les API proprio de Google&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; La persistance avec JDO&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
    (Laurent Gérin: “JDO, ca ne marche pas” :)
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Le support de &lt;a href=&quot;http://fr.wikipedia.org/wiki/XMPP&quot; class=&quot;interwiki iw_wp&quot; title=&quot;http://fr.wikipedia.org/wiki/XMPP&quot;&gt;XMPP&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Didier Girard:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Comme pour l&amp;#039;ensemble des API non J2EE, il faut utiliser les bons patterns pour
permettre le changement de provider le jour venu&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Adhérence avec les API proprio de Google&quot; [3727-4036] --&gt;
&lt;h2&gt;&lt;a name=&quot;google_gwt&quot; id=&quot;google_gwt&quot;&gt;Google GWT&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://code.google.com/intl/fr/webtoolkit/&quot; class=&quot;urlextern&quot; title=&quot;http://code.google.com/intl/fr/webtoolkit/&quot;&gt;Google Web Toolkit&lt;/a&gt; est un ensemble d&amp;#039;outils de Google permettant de développement d&amp;#039;applications riches (RIA)
via notamment un compilateur Java vers Javascript.
&lt;/p&gt;

&lt;p&gt;
Plugin Eclipse fournit par Google :
&lt;a href=&quot;http://code.google.com/intl/fr/eclipse/&quot; class=&quot;urlextern&quot; title=&quot;http://code.google.com/intl/fr/eclipse/&quot;&gt;http://code.google.com/intl/fr/eclipse/&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Didier Girard recommande &lt;a href=&quot;http://www.instantiations.com/gwtdesigner/&quot; class=&quot;urlextern&quot; title=&quot;http://www.instantiations.com/gwtdesigner/&quot;&gt;GWT Designer&lt;/a&gt; (&lt;a href=&quot;http://www.instantiations.com/gwtdesigner/purchase.html&quot; class=&quot;urlextern&quot; title=&quot;http://www.instantiations.com/gwtdesigner/purchase.html&quot;&gt;$ 79 / an&lt;/a&gt;)
&lt;/p&gt;

&lt;p&gt;
GWT fait de la compatibilité au cas par cas pour chaque browser (!= de la vision OpenWeb !)
Par exemple &lt;a href=&quot;http://code.google.com/intl/fr/webtoolkit/doc/1.7/ReleaseNotes_1_7.html&quot; class=&quot;urlextern&quot; title=&quot;http://code.google.com/intl/fr/webtoolkit/doc/1.7/ReleaseNotes_1_7.html&quot;&gt;GWT 1.7 est désormais compatible avec IE8&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
GWT ne fait pas “encore” du OpenWeb car ce n&amp;#039;est pas actuellement possible : support de &lt;acronym title=&quot;Internet Explorer 6&quot;&gt;IE6&lt;/acronym&gt; &amp;amp; co…
&lt;/p&gt;

&lt;p&gt;
Diagramme des traitements GWT :
&lt;a href=&quot;http://www.drazzib.com/lib/exe/fetch.php?cache=cache&amp;amp;media=http%3A%2F%2Fwww-igm.univ-mlv.fr%2F%7Edr%2FXPOSE2008%2FGWT%2Fmedia%2Fgwt_architecture.gif&quot; class=&quot;media&quot; title=&quot;http://www-igm.univ-mlv.fr/~dr/XPOSE2008/GWT/media/gwt_architecture.gif&quot;&gt;&lt;img src=&quot;http://www.drazzib.com/lib/exe/fetch.php?w=&amp;amp;h=&amp;amp;cache=cache&amp;amp;media=http%3A%2F%2Fwww-igm.univ-mlv.fr%2F%7Edr%2FXPOSE2008%2FGWT%2Fmedia%2Fgwt_architecture.gif&quot; class=&quot;mediacenter&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Google GWT&quot; [4037-4942] --&gt;
&lt;h3&gt;&lt;a name=&quot;composants_gwt_natifs&quot; id=&quot;composants_gwt_natifs&quot;&gt;Composants GWT natifs&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Remarque sur la pauvreté des composants GWT natifs
&lt;/p&gt;

&lt;p&gt;
Choix #1 utiliser une des librairies de composants complémentaires (&lt;a href=&quot;http://www.smartclient.com/smartgwt/showcase/&quot; class=&quot;urlextern&quot; title=&quot;http://www.smartclient.com/smartgwt/showcase/&quot;&gt;SmartGWT&lt;/a&gt;, &lt;a href=&quot;http://www.gwt-ext.com/demo/&quot; class=&quot;urlextern&quot; title=&quot;http://www.gwt-ext.com/demo/&quot;&gt;GWT-Ext&lt;/a&gt;, …)
&lt;/p&gt;

&lt;p&gt;
Didier Girard :
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Oui, c&amp;#039;est bien mais ca dépend de la durée de vie de l&amp;#039;application
Pour une livraison dans 3 mois : oui
Mais pour une application avec une durée de vie de +5 ans : faire ses propres composants personnalisés&lt;/pre&gt;

&lt;p&gt;

A lire : &lt;a href=&quot;http://www.slideshare.net/hbraun/gwt-jug-stuttgart&quot; class=&quot;urlextern&quot; title=&quot;http://www.slideshare.net/hbraun/gwt-jug-stuttgart&quot;&gt;http://www.slideshare.net/hbraun/gwt-jug-stuttgart&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Composants GWT natifs&quot; [4943-5499] --&gt;
&lt;h3&gt;&lt;a name=&quot;gwt2&quot; id=&quot;gwt2&quot;&gt;GWT2&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Nouveautés de GWT2
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Utilisation d&amp;#039;un plugin dans votre navigateur préféré pour le debug (et plus UN navigateur intégré par platforme)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; RunAsync : permet de charger des parties d&amp;#039;une application GWT “on-demand”, plutôt que de charger toute l’application dès l&amp;#039;affichage initiale dans le navigateur (sinon, on arrive vite à des applications avec UN fichier javascript &amp;gt; 800Ko) &lt;a href=&quot;http://blog.octo.com/optimiser-le-temps-de-chargement-d%E2%80%99une-application-gwt-22/&quot; class=&quot;urlextern&quot; title=&quot;http://blog.octo.com/optimiser-le-temps-de-chargement-d%E2%80%99une-application-gwt-22/&quot;&gt;Voir article&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; UIBinder : encore un nouveau langage de définition d&amp;#039;interface en &lt;acronym title=&quot;Extensible Markup Language&quot;&gt;XML&lt;/acronym&gt;… pfff… (qui n&amp;#039;est d&amp;#039;ailleurs même pas le même que celui d&amp;#039;Android)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Meilleur support de HtmlUnit pour les tests unitaires&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;GWT2&quot; [5500-6219] --&gt;
&lt;h2&gt;&lt;a name=&quot;google_android&quot; id=&quot;google_android&quot;&gt;Google Android&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;

Google Android est à la fois :
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; un système d&amp;#039;exploitation (basé sur Linux) pour appareils mobiles&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; des applications de bases pour le téléphone&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; un &lt;acronym title=&quot;Software Development Kit&quot;&gt;SDK&lt;/acronym&gt; pour le développement d&amp;#039;application complémentaires&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;

&lt;a href=&quot;http://developer.android.com/guide/topics/fundamentals.html&quot; class=&quot;urlextern&quot; title=&quot;http://developer.android.com/guide/topics/fundamentals.html&quot;&gt;Concepts fondamentaux&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Plugin Eclipse fournit par Google :
&lt;a href=&quot;http://developer.android.com/sdk/eclipse-adt.html&quot; class=&quot;urlextern&quot; title=&quot;http://developer.android.com/sdk/eclipse-adt.html&quot;&gt;http://developer.android.com/sdk/eclipse-adt.html&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Création d&amp;#039;un compte sur le Market Place : 2 minutes montre en main + 25$
&lt;/p&gt;

&lt;p&gt;
On peut directement publier des applications qui sont accessibles depuis un téléphone Android
[clin d&amp;#039;oeil au processus de validation présent sur le “Store” de la marque à la pomme :]
&lt;/p&gt;

&lt;p&gt;
Diagramme de la stack Android :
&lt;a href=&quot;http://www.drazzib.com/lib/exe/fetch.php?cache=cache&amp;amp;media=http%3A%2F%2Fadiguba.developpez.com%2Fblog%2Fandroid-system-architecture.png&quot; class=&quot;media&quot; title=&quot;http://adiguba.developpez.com/blog/android-system-architecture.png&quot;&gt;&lt;img src=&quot;http://www.drazzib.com/lib/exe/fetch.php?w=500&amp;amp;h=&amp;amp;cache=cache&amp;amp;media=http%3A%2F%2Fadiguba.developpez.com%2Fblog%2Fandroid-system-architecture.png&quot; class=&quot;mediacenter&quot; alt=&quot;&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Google Android&quot; [6220-7016] --&gt;
&lt;h2&gt;&lt;a name=&quot;google_wave&quot; id=&quot;google_wave&quot;&gt;Google Wave&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Objectif: réunir en un seul lieu l&amp;#039;ensemble des éléments d&amp;#039;une conversation (une “Wave”) : email, chat, documents, gadgets
Pour l&amp;#039;instant cet outil reste en “beta semi-ouverte”.
&lt;/p&gt;

&lt;p&gt;
Une Wave est statefull : on le retrouve dans l&amp;#039;état précédent à chaque ouverture de session
&lt;/p&gt;

&lt;p&gt;
Les Gadgets sont également statefull : on peut conserver une HashMap d&amp;#039;infos
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Google Wave&quot; [7017-7398] --&gt;
&lt;h3&gt;&lt;a name=&quot;robots&quot; id=&quot;robots&quot;&gt;Robots&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Les “robots” sont un élément important de Wave.
Ils reçoivent l&amp;#039;ensemble des éléments de la Wave et peuvent réagir aux événements.
L&amp;#039;ajout d&amp;#039;un “robot” peut automatiquement déclencher l&amp;#039;ajout d&amp;#039;un ou des Gadgets.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Robots&quot; [7399-7638] --&gt;
&lt;h3&gt;&lt;a name=&quot;exemple_metier_demande_de_conges&quot; id=&quot;exemple_metier_demande_de_conges&quot;&gt;Exemple métier : demande de congés&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Un robot de gestion des congés&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; On l&amp;#039;ajoute dans la Wave et ceci déclenche l&amp;#039;affichage d&amp;#039;un Gadget (mini-application avec calendrier)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; On effectue la demande de congé via le formulaire du Gadget&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Elle entre en état de “validation”&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; La personne valide la demande&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Le robot détecte cette validation et peut éditer une demande, envoyer un mail, etc…&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Exemple métier : demande de congés&quot; [7639-8061] --&gt;
&lt;h3&gt;&lt;a name=&quot;exemple_stack_google_complete&quot; id=&quot;exemple_stack_google_complete&quot;&gt;Exemple &amp;quot;stack Google complète&amp;quot;&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://picasaweb.google.com/diaz.salvador/ParisJUG#5404449358120409650&quot; class=&quot;urlextern&quot; title=&quot;http://picasaweb.google.com/diaz.salvador/ParisJUG#5404449358120409650&quot;&gt;http://picasaweb.google.com/diaz.salvador/ParisJUG#5404449358120409650&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://picasaweb.google.com/diaz.salvador/ParisJUG#5404449858554874354&quot; class=&quot;urlextern&quot; title=&quot;http://picasaweb.google.com/diaz.salvador/ParisJUG#5404449858554874354&quot;&gt;http://picasaweb.google.com/diaz.salvador/ParisJUG#5404449858554874354&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Exemple stack Google complète&quot; [8062-8256] --&gt;
&lt;h3&gt;&lt;a name=&quot;conclusion&quot; id=&quot;conclusion&quot;&gt;Conclusion&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Développeur = innovateur&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; AppEngine ou Android : un bon moyen de déployer son application, son idée, sa petite révolution avec une retour direct des utilisateurs (réduction potentielle des intermédiaires)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;

&lt;strong&gt;Enjoy!&lt;/strong&gt;
&lt;/p&gt;
&lt;div class=&quot;tags&quot;&gt;&lt;span&gt;
	&lt;a href=&quot;http://www.drazzib.com/tags:google?do=showtag&amp;amp;tag=google&quot; class=&quot;wikilink1&quot; title=&quot;tags:google&quot; rel=&quot;tag&quot;&gt;Google&lt;/a&gt;,
	&lt;a href=&quot;http://www.drazzib.com/tags:libre&quot; class=&quot;wikilink1&quot; title=&quot;tags:libre&quot; rel=&quot;tag&quot;&gt;Libre&lt;/a&gt;,
	&lt;a href=&quot;http://www.drazzib.com/tags:java&quot; class=&quot;wikilink1&quot; title=&quot;tags:java&quot; rel=&quot;tag&quot;&gt;Java&lt;/a&gt;
&lt;/span&gt;&lt;/div&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Conclusion&quot; [8257-] --&gt;</description>
    </item>
</rdf:RDF>
