Google Web Toolkit Introduction Didier Girard – 04 juillet 2007.

Slides:



Advertisements
Présentations similaires
A-Render Le viewer Arondor
Advertisements

Internet et le client- serveur Licence Pro IE Cours Internet / Intranet Le Web HTML Protocoles Le client universel Contenus dynamiques.
- Formation Flex (Introduction)‏ - Formation Flex 1 1.
Première expérience d’utilisation des Web Services dans SmartTools Didier Parigot Projet OASIS INRIA Sophia www-sop.inria.fr/oasis/SmartTools Journée.
Serveurs web pour JSP et Servlets
Architecture. Architecture Enjeux Les Enjeux Trouver une solution e-Business Accessible à partir d’un navigateur Web Accédant au système via un Portail.
Excel 2007 et les services Excel. Pourquoi Excel ? Outil privilégié danalyse des données issues des bases multidimensionnelles Ergonomie connue des outils.
Exposé de Système - Informatique et Réseau
Le développement d’applications sous Lotus Notes
Cours 6 : XML et les architectures N-tiers – Tier Applicatif
Projet Webase. I. La définition du projet 1. Lexistant : Webase 4 2. Cahier des charges 3. La répartition des données 4. Le modèle de données 5. Le choix.
Google Web Toolkit Introduction Didier Girard – 04 juillet 2007.
Google Web Toolkit Introduction Michel Buffa daprès le ppt original de Didier Girard – 04 juillet 2007.
GWT, présentation générale
Développement dun simulateur dinterface graphique à distance Présenté par Michaël Delhaye Promoteur : Jean Vanderdonckt.
Introduction aux Session Beans
Présentation application GRBL France Telecom
Le Téléphone Russe Le Téléphone Russe. Le Téléphone Russe Le Téléphone Russe.
Trucs et astuces pour faire de son application Android un succès Lille – 11 octobre 2011
2006/2007Denis Cabasson – Programmation Web Cours de programmation web ENSAE
Cours du soir GWT Mardi 3 Juin 2008 Anthony Dahanne
Communiquer avec ELYX.
Présenté par : Kalleli Dhouha
XML-Family Web Services Description Language W.S.D.L.
Pierre Lagarde Christophe Lauer
Android est une plateforme mobile open source et entièrement paramétrable. Elle a été créée afin de mettre à disposition des développeurs toutes les fonctionnalités.
After Work GWT Mercredi 17 Décembre 2008
GWT V 1.0 / May. Plan Informations – Slides Widgets GWT – Slides 8 – 11 RPC / JNSI - Slides Plugins – Slides Bibliothèques.
Ajax. Contexte Dabord, il y a eu les terminaux des ordinateurs centraux (environnements TSO, CICS, etc.) et les terminaux plein écran des environnements.
GWT UML Un modeleur UML en GWT
GWT, présentation générale Rédigée à partir des présentations de Didier Girard Et de Anthony Dahanne Mise.
Développement de clients riches : Plateforme Flex Mickaël BARON ou Introduction.
ISICIL SWEETDEKI Intégration du logiciel Mindtouch Core dans la plate-forme ISICIL Guillaume HUSSON.
Framework Play 2.0 Démonstration du proof of concept
Microsoft .NET.
Clients riches RIA (Rich Internet Application) / RDA
Document élaboré à Centrale Paris par Pascal Morenton LES TECHNOLOGIES DU WEB 1. LES PHASES D UN DEPLOIEMENT DE RESEAUX 2. LE LANGAGE HTML 3. LE LANGAGE.
Adaptée du cours de Richard Grin
J2EE vs .NET Réaliser par : SEIF ENNACER BADRA && CHETOUI RIM.
NEWS Peltiez Jason. Finalisation du HTML 5 pour fin 2014 et date du HTML 5.1 Succès du HTML 5 mais spécifications non finalisées Débuté en 2004 par le.
JEE 5 F.Pfister 2 institut eerie JEE – Une plateforme serveur  Développement et exécution d'applications réparties.
LES CLIENTS WEB RICHES Tuteur : Olivier CARON LEFEBVRE Benoit
Internet et le client- serveur Licence Pro IE Cours Internet / Intranet Le Web HTML Protocoles Le client universel Contenus dynamiques.
Module Internet (3) 1 Département Technologie de l’Information et de la Communication Internet.
Outil de gestion des cartes grises
Créez des applications Silverlight 3 David Rousset Relations Techniques avec les développeurs Microsoft France
AngularJS.
09/11/2006 CMS Content Management System Système de Gestion de Contenu.
Android Kévin Giroux.
« Le plaisir du chercheur : retrousser les jupes de la nature » Jean Rostand Proposer une « Interface Homme Machine » en utilisant une technologie Client.
Introduction à la plateforme .NET
Enterprise Java Beans 3.0 Cours INF Bases de Données Hiver 2005, groupe 10 Stefan MARTINESCU.
Metro Web Services Ben Yaflah Marouen Dhrif Mohamed Hbib Hajlaoui Nader.
S'initier au HTML et aux feuilles de style CSS Cours 5.
AJAX Open Source Etat de l’art Baris Ulucinar, Octobre 2006 University of Fribourg, Suisse Sous la direction de Prof. O. Abou Khaled.
Créez des applications Silverlight 3 David Rousset Relations Techniques avec les développeurs Microsoft France
Introduction au socle MEAN
ASP.NET AJAX Control Toolkit
Sites Web interactifs 2010 / 2011 / S1 Bernhard Rieder.
1 25 juin 2007 AJAX pour EIAH ? Choix technologique pour un EIAH de l’algorithmique : EDBA Denis Bouhineau Laboratoire d’Informatique de Grenoble (LIG)
d’une plateforme web géo-décisionnelle
11 Un tour d’horizon des dernières technologies Web 9 Février 2010 Simon FERQUEL Développeur Access it Adrien SIFFERMANN PDG Imajin.
Développement et design Web Awaves academy Stockholm 2006.
Apports des clients riches dans le monde du WEB 2.0
After Work GWT Mardi 25 Novembre 2008 Anthony Dahanne
Parquet Geoffrey 3 ARIL EXIA.CESI ARRAS. Présentation du MLD Présentation de la persistance Présentation récapitulatif du projet JSP/SERVLET MVC Cycle.
GWT Google Web Toolkit Yves Bekkers 1GWT - Yves Bekkers.
PROJET DE SESSION DANS LE CADRE DU COURS: SCG Réalisation d’applications en SIG PRÉSENTÉ PAR: Marie-Andrée Levesque 18 AVRIL 2006.
Architecture J2EE Web Jean-Jacques LE COZ. J2EE Web Container JSP Page Servlet J ava 2 Standard Edition APIs EJB Container EJB JDBCJMS JNDI JTA JavaMail.
Transcription de la présentation:

Google Web Toolkit Introduction Didier Girard – 04 juillet 2007

Sommaire Comment GWT fonctionne ? Les fonctionnalités

Composants graphiques plus évolués Des composants tous plus beaux les uns que les autres

Serveur sans état Client avec état Meilleure scalability ApplicationIHM+Métier + Session Serveur dapplications Métier + Session Base de données Données

Au début, Ajax cest cool Cest beau Efficace Les clients en redemandent

Les difficultés Cross-navigateur Fuite mémoire Lourdeur du chargement Peu de « Docteur es Javascript » Pas de bons IDE Bug (javascript est un langage interprété) Pas de debug Sécurité …

COMMENT GWT FONCTIONNE ?

Lobjectif Permettre de développer simplement, des applications – Cross navigateurs – Efficaces – Stables Dans un environnement amical pour les développeurs – Support des IDE, Debugging, refactoring, typage fort,…

Lapproche Développer en Java Compiler le Java en Javascript/CSS

Hello World Démonstration

Browser IE, Firefox, Safari, Opera Browser IE, Firefox, Safari, Opera RWA in Java Java Runtime Library Architecture java.lang java.util Java.io Code de lapplication GWT GUI Library Panels Popup Stack Absolute Vertical … Panels Popup Stack Absolute Vertical … Widgets Button MenuBar Radio Tree Check Table TextArea …. Widgets Button MenuBar Radio Tree Check Table TextArea …. Javascript Application GWT Runtime 100Ko GWT Runtime 100Ko GWT Compiler GWT Compiler

TOUR DHORIZON

Des widgets « 100% java » Démonstration (Kitchen Sink)

Support de lhistorique « Single Page Interface », mais gestion de lhistorique ! Démonstration (Kitchen Sink) Le code History.addHistoryListener(myCommand);

Support de RPC (JSON/XML-RPC) AJAX est dabord une histoire de requêtes asynchrones – Avec GWT, cest simple !

Support de I18N/L10N Puissant et original

Absolute Panel Permet de développer efficacement – Un vrai bonheur ! Il y a bien dautres Panel : Grid, Row, Flex, Vertical, Tab,…

Support multi-navigateur et multi-plateforme Et ça marche…

Support des CSS Tous les composants GWT supportent nativement les CSS

Support du debug

Support de javascript JSNI, une API astucieuse Beaucoup de bibliothèques de javascript populaires sont déjà « wrappées » : scriptaculous, yui, timeline,… Démonstration public static native void alert(String msg) /*-{ $wnd.alert(msg); }-*/;

Optimisation du code Le javascript est optimisé durant la compilation Seul le javascript nécessaire est téléchargé par le navigateur – Javascript pour la plateforme cible – Seule lAPI effectivement utilisée est téléchargée

Très bonne scalabilité Avec GWT les serveurs sont stateless Il est donc très facile daugmenter la puissance CPU des serveurs – Plus de « session affinity »

Des outils GWT est supporté par tous les grands IDE Java : Eclipse, NetBeans, IntelliJ IDEA, Jdeveloper,… Publicité : GWT Designer pour Eclipse (payant)

La communauté GWT Plus de téléchargements Plus de 9000 inscrits sur le forum Des ouvrages De nombreux articles/tutoriaux Des formations Des blogs

GWT 1.4 GWT 1.4 arrive avec son lot de nouveautés – Par exemple : ImageBundle (téléchargement optimisé dimages), une espèce de base dimages – Passage de 12 requêtes HTTP à une seule… ClippedImage timeIcon = new ClippedImage("icons.png", 22, 0, 22, 22);

GWT Gears Gears permet daccéder à une base local depuis javascript. Il existe une API pour GWT : – Demo 27 Google Confidential

GWT est efficace Il est couramment admis que développer avec GWT permet dêtre 5 fois plus efficace – Refactoring – Debugging – Serveur Stateless – Cross-navigateurs – I18N – Hosted mode – JSNI

QUELQUES TRUCS

Attention, un langage peut en cacher un autre Le code qui sexécute nest pas du java, mais du javascript. Par exemple « long » nexiste pas en javascript ! 30 Google Confidential

En vrac La manipulation du DOM est coûteuse – Vos utilisateurs vont avoir des messages : « slow script » – -> utilisez « IncrementalCommand » – Tous les navigateurs ont un nombre limité de connexions HTTP, par défaut cest deux : pas la peine denvoyer des tonnes de requêtes asynchrones… Sous classez la classe AsyncCallback pour gérer de manière centrale les erreurs Oubliez javascript, codez vos widgets en Java 31 Google Confidential

LES IDEES REÇUES

Java est nécessaire sur le serveur Non, GWT nimpose pas de technologie sur le serveur GWT est simplement plus pratique à utiliser avec Java sur le serveur

Le code Javascript généré est difficile à débugger Il est possible, via les options du compilateur, davoir un code javascript lisible.

Les widgets GWT ? Bof…. Les widgets GWT sont des widgets de bases. Il existe beaucoup de projet qui proposent des widgets évolués – GWT Ext – GWT Rialto – Tatami – GWT Widget – GWTaculous – … 35 Google Confidential

Les applications GWT sont lourdes Le code généré est optimisé et gzippable – KitchenSink pèse autour de 60Ko !

GWT ne supporte pas lexistant Faux – Il est tout à fait possible dintégrer des composants GWT dans une page HTML classique.

GWT cest des applets Des applets, non merci :-) – Le code java est compilé en javascript durant la phase de développement !

GWT est propriétaire Mais non – GWT est sous licence opensource Apache depuis la version 1.3 (12/2006)

MISC Version de JDK ? – Codez le code serveur en java 5/6, codez le code client en java 1.4 Intégration avec Spring ? – Facilité avec GWT 1.4 Intégration avec Hibernate ? – Facilité avec GWT 1.4 : danger ! Intégration avec les EJBs – Naturel avec les entity beans – Nécessite un wrapper pour les session beans – Normalement full support avec GWT 1.5

Ressources GWT : Forum pour les développeurs : Blog officiel : onGWT, Tracking news on GWT : GWT 1.4: