Créer Des Applications Web Interactives Avec Google Web Toolkit (Versions 1.7 Et 2.0)

Total Page:16

File Type:pdf, Size:1020Kb

Créer Des Applications Web Interactives Avec Google Web Toolkit (Versions 1.7 Et 2.0) GWT Créer des applications web interactives avec Google Web Toolkit (versions 1.7 et 2.0) Olivier Gérardin Directeur technique de Sfeir Benelux (groupe Sfeir) Préface de Didier Girard Directeur des opérations et de l'innovation de Sfeir Paris (groupe Sfeir) 978-2-10-054628-2 Préface JavaScript : je t’aime, moi non plus Depuis que je développe des sites ou des applications web, j’ai toujours recherché la technologie qui me permettrait de développer des sites web avec la meilleure expérience utilisateur. La raison est simple, meilleure est l’expérience utilisateur et plus il y a de chances pour que l’internaute revienne. C’est tellement simple, c’est tellement vrai. Cette quête permanente de la meilleure technologie fait certainement de moi un technophile. Je n’en suis pas moins un technophobe : la technologie ne m’intéresse pas pour ce qu’elle est, mais pour ce qu’elle me permet de créer. Ainsi, chaque mois je teste un grand nombre de « nouveautés qui vont révolutionner le monde du développement logiciel » et j’en rejette autant avec tout le dégoût provoqué par la perte du temps consacré. Pour tester une technologie, mon approche est simple, quinze minutes pour comprendre, une heure pour faire un Hello World et huit heures pour résoudre un problème qui me tient à cœur. C’est ainsi qu’au fil des années, j’ai développé des sites web en Shell, Perl, SSJS, ASP, .NET, Flex et Java. Année après année, une technologie revenait sur mon banc de test : sa puissance, son universalité, sa simplicité me plaisait. Pourtant, après quelques heures d’utilisation, je n’avais qu’une envie : la jeter par la fenêtre. Cette technologie était JavaScript. Pendant des années mes sites ont donc contenu le minimum syndical de JavaScript et je voyais arriver la vague AJAX comme un raz de marée qui allait m’engloutir faute de pouvoir aimer le cœur de cette approche. GWT : Bon pour l’utilisateur, bon pour le développeur GWT va me sauver. Sur le papier, cette technologie pensée par Google correspond à ce que j’attendais : bonne pour l’utilisateur, bonne pour le développeur. En cinq minutes, j’ai compris son fonctionnement et sa puissance « coder en java, compiler en JavaScript » ; en quinze minutes, j’ai fait mon premier Hello World ; en huit heures j’ai développé une application qui me semblait impossible à réaliser quelques heures auparavant. J’étais conquis. L’accueil par les développeurs Web 2.0 était pourtant mitigé, l’approche adoptée par GWT blessait les puristes ou les influenceurs du Web : JavaScript n’était plus considéré comme un langage pour programmer le Web, mais VI GWT comme un simple assembleur permettant d’exécuter le Web. L’intensité du rejet par ces puristes était sans doute à l’échelle du potentiel de GWT qui : • propose une bonne expérience utilisateur ; • est facile d’utilisation ; • est compatible avec les meilleurs environnements de développement ; • aide à résoudre des problèmes difficiles de manière simple et efficace ; • est soutenu par une communauté enthousiaste et en expansion rapide ; • facilite la maintenance ; • garantit une bonne performance ; • est fun ; • est gratuit et libre d’utilisation. Et nous : Invention et Innovation En créant GWT, Google ouvre une nouvelle ère du développement et rend accessible à tous les développeurs la réalisation de sites web de nouvelle génération. Cette invention permet d’améliorer la satisfaction client tout en innovant, c’est pour cela que je l’ai adoptée et que je la conseille à mes clients. Ce livre Il existait actuellement beaucoup d’ouvrages en anglais sur GWT, il manquait un ouvrage en français qui permette aux nombreux développeurs francophones de découvrir cette technologie et ces concepts dans leur langue. C’est ce que propose Olivier avec talent. Présenter une technologie n’est jamais aisée, les livres sont souvent trop techniques ou pas assez, c’est selon. Ce livre a le bon dosage, il vous permettra à la fois de bien débuter avec la technologie mais aussi d’approfondir les concepts importants afin de développer des applications ayant la qualité requise pour une utilisation en entreprise. Je le conseille donc à toute personne qui veut bien démarrer avec GWT, que ce soit dans le cadre d’une activité de veille technologique, dans le cadre du démarrage d’un projet ou dans le cadre de monitorat. Bonne aventure technologique, Didier Girard http://www.google.com/search?q=Didier+Girard Table des matières Préface ................................................... .................. V Avant-propos ................................................... ............. XIII Première partie – Développer avec GWT Chapitre 1 – De HTML à GWT .............................................. 3 1.1 AucommencementétaitHTML ......................... ................ 3 1.1.1 La notion d’URL ................................................... 4 1.1.2 La technologie derrière les pages ........................................ 5 1.2 L’apparition despagesdynamiques.................. ...................... 5 1.2.1 CGI ................................................... ............ 6 1.2.2 Server-side Scripting : PHP & Cie ...................................... 6 1.2.3 Java côté client : les applets ............................................ 6 1.2.4 Les servlets et JSP ................................................... 7 1.2.5 Client-side Scripting et JavaScript....................................... 7 1.2.6 Du vrai client-serveur en JavaScript : XmlHttpRequest et AJAX ............ 9 1.3 L’étapesuivante: GoogleWeb Toolkit ................ .................... 9 1.3.1 Les challenges ................................................... .... 9 1.3.2 Les réponses de GWT ................................................ 10 1.3.3 L’historique de la plate-forme........................................... 11 VIII GWT Chapitre 2 – Hello, GWT ................................................... 13 2.1 L’environnement de développement.................. .................... 13 2.1.1 Les plugins GWT ................................................... 15 2.2 Installation.................................... ......................... 15 2.2.1 Le choix de la plate-forme ............................................. 15 2.2.2 Installation d’Eclipse.................................................. 16 2.2.3 Installation de GWT ................................................. 16 2.2.4 Google Plugin pour Eclipse ............................................ 17 2.3 Anatomied’unprojetGWT ........................... .................. 18 2.3.1 Nommage des packages et structure des dossiers ........................... 18 2.3.2 La page HTML hôte ................................................. 19 2.3.3 Le point d’entrée ................................................... .. 20 2.3.4 Le fichier module................................................... .. 21 2.4 Hello,GWT....................................... ..................... 22 2.4.1 Création du projet................................................... 22 2.4.2 Création du module GWT ............................................ 24 2.4.3 Création du point d’entrée ............................................. 27 2.4.4 Création de la page HTML hôte........................................ 28 2.4.5 Lancement de l’application ............................................ 29 Chapitre 3 – Développer avec GWT .......................................... 31 3.1 Hosted mode vs web mode ................................................. 31 3.2 ContraintessurlecodeJava........................ ...................... 32 3.2.1 Support du langage ................................................... 32 3.2.2 Émulation des classes du JRE .......................................... 33 3.3 Lancerenmodehôte................................ .................... 35 3.3.1 Le serveur d’applications intégré ........................................ 36 3.4 Compileretlancerenmodeweb....................... ................... 36 3.4.1 Les fichiers générés par le compilateur GWT ............................. 37 3.5 Développementavecl’IDE.......................... ..................... 38 3.5.1 Debug et cycle de développement ....................................... 39 Table des matières IX Chapitre 4 – Widgets, panels, etc.............................................. 41 4.1 Uneinterface graphiquedynamique.................. ..................... 41 4.1.1 Les widgets GWT................................................... 42 4.1.2 GWT et les aspects graphiques ......................................... 42 4.2 Widgetsetpanels................................. ...................... 43 4.2.1 Événements et Handlers .............................................. 43 4.2.2 Widgets simples ................................................... ... 44 4.2.3 Panels ................................................... ........... 60 Chapitre 5 – Communiquer avec le serveur.................................... 71 5.1 Codeclientvscodeserveur......................... ..................... 71 5.2 LesprincipesdeGWTRPC............................ .................. 72 5.2.1 Classes et interfaces mises en jeu ....................................... 73 5.3 Lacréationd’unservicepasàpas.................... ..................... 74 5.3.1 Écriture des interfaces et de l’implémentation ............................. 74 5.3.2 Déploiement sur le serveur embarqué .................................... 76 5.3.3 La réalisation d’un appel RPC ......................................... 77 5.4 Exemplecomplet.................................. .....................
Recommended publications
  • Simulationsprogramm Zur Visualisierung Der Vorgänge in Einem Computer
    Simulationsprogramm zur Visualisierung der Vorgänge in einem Computer Masterarbeit zur Erlangung des Master of Advanced Studies ZFH in Informatik vorgelegt von Christian Kaegi geboren am 05.01.1969 von Bauma, Kanton Zürich eingereicht Dipl. Ing. Walter Eich Stetten, 28.8.2015 ZHAW - Masterarbeit - Christian Kaegi - 28.8.2015 - v2.0.3 Inhaltsverzeichnis 1. Zusammenfassung 9 2. Einleitung 11 2.1 Ausgangslage 11 2.2 Motivation 12 2.3 Fragestellungen 12 2.4 Abgrenzung 12 2.5 Zielsetzung 12 3. Von der abstrakten Theorie zur erleb- und fassbaren Simulation 13 3.1 Problemanalyse 13 3.1.1 Definition der Zielgruppe 13 3.1.2 Personas 14 3.1.3 Beispiele von existierenden Lösungen und Lösungsansätzen 15 3.1.3.1 Little Man Computer 15 3.1.3.2 Der Bonsai-Modellrechner 16 3.1.3.3 Der Murmelrechner 17 3.1.3.4 Paper Processor 18 3.1.3.5 WDR-1-Bit-Computer 19 3.1.3.6 Ein 8-Bit Computer Marke Eigenbau 19 3.1.3.7 Ein einfacher 4-Bit Computer für den Klassenraum 20 3.1.3.8 Visuelle Simulation einer 6502 CPU auf Transistorebene 21 3.1.3.9 Simulationen mit Logisim 22 3.1.3.10 Weitere Simulationsprogramme 22 3.1.4 Fazit 23 3.2 Lösungsansatz 24 3.3 Die Komponenten 25 3.3.1 Befehls-, Daten- und Adressbus 26 3.3.2 Logikgatter 26 3.3.3 Speicher 27 3.3.4 Auswahlschaltungen 30 3.3.5 Arithmetik 32 3.3.6 Taktgeber 36 3.4 Simulation in Logisim bauen 36 3.4.1 Befehlssatz 38 3.4.1.1 Erläuterung der Befehle 40 3.4.1.2 Zeichencode 41 3.5 Anforderungen an das Simulationsprogramm 43 3.6 Technologie-Evaluation 44 3.6.1 Zielplattform 44 3.6.2 Java 44 3.6.3 Actionscript 44 3.6.4
    [Show full text]
  • THE FUTURE of SCREENS from James Stanton a Little Bit About Me
    THE FUTURE OF SCREENS From james stanton A little bit about me. Hi I am James (Mckenzie) Stanton Thinker / Designer / Engineer / Director / Executive / Artist / Human / Practitioner / Gardner / Builder / and much more... Born in Essex, United Kingdom and survived a few hair raising moments and learnt digital from the ground up. Ok enough of the pleasantries I have been working in the design field since 1999 from the Falmouth School of Art and onwards to the RCA, and many companies. Ok. less about me and more about what I have seen… Today we are going to cover - SCREENS CONCEPTS - DIGITAL TRANSFORMATION - WHY ASSETS LIBRARIES - CODE LIBRARIES - COST EFFECTIVE SOLUTION FOR IMPLEMENTATION I know, I know, I know. That's all good and well, but what does this all mean to a company like mine? We are about to see a massive change in consumer behavior so let's get ready. DIGITAL TRANSFORMATION AS A USP Getting this correct will change your company forever. DIGITAL TRANSFORMATION USP-01 Digital transformation (DT) – the use of technology to radically improve performance or reach of enterprises – is becoming a hot topic for companies across the globe. VERY DIGITAL CHANGING NOT VERY DIGITAL DIGITAL TRANSFORMATION USP-02 Companies face common pressures from customers, employees and competitors to begin or speed up their digital transformation. However they are transforming at different paces with different results. VERY DIGITAL CHANGING NOT VERY DIGITAL DIGITAL TRANSFORMATION USP-03 Successful digital transformation comes not from implementing new technologies but from transforming your organisation to take advantage of the possibilities that new technologies provide.
    [Show full text]
  • What Is Dart?
    1 Dart in Action By Chris Buckett As a language on its own, Dart might be just another language, but when you take into account the whole Dart ecosystem, Dart represents an exciting prospect in the world of web development. In this green paper based on Dart in Action, author Chris Buckett explains how Dart, with its ability to either run natively or be converted to JavaScript and coupled with HTML5 is an ideal solution for building web applications that do not need external plugins to provide all the features. You may also be interested in… What is Dart? The quick answer to the question of what Dart is that it is an open-source structured programming language for creating complex browser based web applications. You can run applications created in Dart by either using a browser that directly supports Dart code, or by converting your Dart code to JavaScript (which happens seamlessly). It is class based, optionally typed, and single threaded (but supports multiple threads through a mechanism called isolates) and has a familiar syntax. In addition to running in browsers, you can also run Dart code on the server, hosted in the Dart virtual machine. The language itself is very similar to Java, C#, and JavaScript. One of the primary goals of the Dart developers is that the language seems familiar. This is a tiny dart script: main() { #A var d = “Dart”; #B String w = “World”; #C print(“Hello ${d} ${w}”); #D } #A Single entry point function main() executes when the script is fully loaded #B Optional typing (no type specified) #C Static typing (String type specified) #D Outputs “Hello Dart World” to the browser console or stdout This script can be embedded within <script type=“application/dart”> tags and run in the Dartium experimental browser, converted to JavaScript using the Frog tool and run in all modern browsers, or saved to a .dart file and run directly on the server using the dart virtual machine executable.
    [Show full text]
  • TIBCO Activematrix® BPM Web Client Developer's Guide Software Release 4.3 April 2019 2
    TIBCO ActiveMatrix® BPM Web Client Developer's Guide Software Release 4.3 April 2019 2 Important Information SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCH EMBEDDED OR BUNDLED TIBCO SOFTWARE IS SOLELY TO ENABLE THE FUNCTIONALITY (OR PROVIDE LIMITED ADD-ON FUNCTIONALITY) OF THE LICENSED TIBCO SOFTWARE. THE EMBEDDED OR BUNDLED SOFTWARE IS NOT LICENSED TO BE USED OR ACCESSED BY ANY OTHER TIBCO SOFTWARE OR FOR ANY OTHER PURPOSE. USE OF TIBCO SOFTWARE AND THIS DOCUMENT IS SUBJECT TO THE TERMS AND CONDITIONS OF A LICENSE AGREEMENT FOUND IN EITHER A SEPARATELY EXECUTED SOFTWARE LICENSE AGREEMENT, OR, IF THERE IS NO SUCH SEPARATE AGREEMENT, THE CLICKWRAP END USER LICENSE AGREEMENT WHICH IS DISPLAYED DURING DOWNLOAD OR INSTALLATION OF THE SOFTWARE (AND WHICH IS DUPLICATED IN THE LICENSE FILE) OR IF THERE IS NO SUCH SOFTWARE LICENSE AGREEMENT OR CLICKWRAP END USER LICENSE AGREEMENT, THE LICENSE(S) LOCATED IN THE “LICENSE” FILE(S) OF THE SOFTWARE. USE OF THIS DOCUMENT IS SUBJECT TO THOSE TERMS AND CONDITIONS, AND YOUR USE HEREOF SHALL CONSTITUTE ACCEPTANCE OF AND AN AGREEMENT TO BE BOUND BY THE SAME. ANY SOFTWARE ITEM IDENTIFIED AS THIRD PARTY LIBRARY IS AVAILABLE UNDER SEPARATE SOFTWARE LICENSE TERMS AND IS NOT PART OF A TIBCO PRODUCT. AS SUCH, THESE SOFTWARE ITEMS ARE NOT COVERED BY THE TERMS OF YOUR AGREEMENT WITH TIBCO, INCLUDING ANY TERMS CONCERNING SUPPORT, MAINTENANCE, WARRANTIES, AND INDEMNITIES. DOWNLOAD AND USE OF THESE ITEMS IS SOLELY AT YOUR OWN DISCRETION AND SUBJECT TO THE LICENSE TERMS APPLICABLE TO THEM. BY PROCEEDING TO DOWNLOAD, INSTALL OR USE ANY OF THESE ITEMS, YOU ACKNOWLEDGE THE FOREGOING DISTINCTIONS BETWEEN THESE ITEMS AND TIBCO PRODUCTS.
    [Show full text]
  • Attacking AJAX Web Applications Vulns 2.0 for Web 2.0
    Attacking AJAX Web Applications Vulns 2.0 for Web 2.0 Alex Stamos Zane Lackey [email protected] [email protected] Blackhat Japan October 5, 2006 Information Security Partners, LLC iSECPartners.com Information Security Partners, LLC www.isecpartners.com Agenda • Introduction – Who are we? – Why care about AJAX? • How does AJAX change Web Attacks? • AJAX Background and Technologies • Attacks Against AJAX – Discovery and Method Manipulation – XSS – Cross-Site Request Forgery • Security of Popular Frameworks – Microsoft ATLAS – Google GWT –Java DWR • Q&A 2 Information Security Partners, LLC www.isecpartners.com Introduction • Who are we? – Consultants for iSEC Partners – Application security consultants and researchers – Based in San Francisco • Why listen to this talk? – New technologies are making web app security much more complicated • This is obvious to anybody who reads the paper – MySpace – Yahoo – Worming of XSS – Our Goals for what you should walk away with: • Basic understanding of AJAX and different AJAX technologies • Knowledge of how AJAX changes web attacks • In-depth knowledge on XSS and XSRF in AJAX • An opinion on whether you can trust your AJAX framework to “take care of security” 3 Information Security Partners, LLC www.isecpartners.com Shameless Plug Slide • Special Thanks to: – Scott Stender, Jesse Burns, and Brad Hill of iSEC Partners – Amit Klein and Jeremiah Grossman for doing great work in this area – Rich Cannings at Google • Books by iSECer Himanshu Dwivedi – Securing Storage – Hackers’ Challenge 3 • We are
    [Show full text]
  • Enterprise Development with Flex
    Enterprise Development with Flex Enterprise Development with Flex Yakov Fain, Victor Rasputnis, and Anatole Tartakovsky Beijing • Cambridge • Farnham • Köln • Sebastopol • Taipei • Tokyo Enterprise Development with Flex by Yakov Fain, Victor Rasputnis, and Anatole Tartakovsky Copyright © 2010 Yakov Fain, Victor Rasputnis, and Anatole Tartakovsky.. All rights reserved. Printed in the United States of America. Published by O’Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472. O’Reilly books may be purchased for educational, business, or sales promotional use. Online editions are also available for most titles (http://my.safaribooksonline.com). For more information, contact our corporate/institutional sales department: (800) 998-9938 or [email protected]. Editor: Mary E. Treseler Indexer: Ellen Troutman Development Editor: Linda Laflamme Cover Designer: Karen Montgomery Production Editor: Adam Zaremba Interior Designer: David Futato Copyeditor: Nancy Kotary Illustrator: Robert Romano Proofreader: Sada Preisch Printing History: March 2010: First Edition. Nutshell Handbook, the Nutshell Handbook logo, and the O’Reilly logo are registered trademarks of O’Reilly Media, Inc. Enterprise Development with Flex, the image of red-crested wood-quails, and related trade dress are trademarks of O’Reilly Media, Inc. Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this book, and O’Reilly Media, Inc. was aware of a trademark claim, the designations have been printed in caps or initial caps. While every precaution has been taken in the preparation of this book, the publisher and authors assume no responsibility for errors or omissions, or for damages resulting from the use of the information con- tained herein.
    [Show full text]
  • Cliente Twitter Con Compresión De Datos
    PROYECTO FIN DE GRADO GRADO EN INGENIERÍA INFROMÁTICA CLIENTE TWITTER CON COMPRESIÓN DE DATOS Autor: Plácido Fernández Declara Tutores: Luis Miguel Sánchez García Rafael Sotomayor Fernández Colmenarejo, Febrero de 2013 RESUMEN La popular red social Twitter es usada hoy en día en diversos lugares y momentos, gracias también a las redes móviles que nos proporcionan conexión a internet en casi cualquier lugar. Twitter permite publicar y mandar mensajes cortos de texto plano con un máximo de 140 caracteres, así como la lectura de estos mensajes cortos de otros usuarios a los que podemos seguir para tal propósito. Hacer uso de este servicio en zonas con buena cobertura, o cuando usamos Wi-fi no supone generalmente ningún problema. Es cuando nos encontramos en zonas de poca cobertura cuando vemos problemas para hacer uso de este servicio, ya que las velocidades de descarga pueden disminuir hasta el punto de necesitar decenas de segundos para disponer de los mensajes cortos, los “Tweets”. A esto hay que añadir que los planes de datos actuales están limitados de alguna forma (al alcanzar un número de Mb), por lo que la cantidad de Mb usada es hoy también un factor importante. Para ello esta aplicación ofrece la experiencia de un cliente Twitter sencillo en el que consultar los “Tweets” de a quien seguimos, así como publicar “Tweets”, haciendo uso de un Proxy que comprime estos datos considerablemente de forma que se reducen los tiempos de descarga para las zonas de poca cobertura y además se reduce el número de Mb consumidos por el dispositivo móvil. Índice de contenido RESUMEN .................................................................................................................................
    [Show full text]
  • Education Social
    Jens Krause Hamburg Area - Germany | http://jkrause.io | [email protected] Independent Software Developer with ~20 years of experiences in the industry. Today focused on building software in the crypto and blockchain space by using Functional Programming (Haskell, PureScript, Rust etc). Contract work (Detailed portfolio: http://jkrause.io/arbeiten/) 2016 - 2019 Blockchain development LNX Senior Blockchain Architect Seoul / South Korea - Prepare DAG part to work with Substrate May 2019 – August 2019 - p2p handling of DAG nodes independently of Substrate (libp2p, Rust) (contract + remote work) - e2e / unit tests (Rust) - Basic architecture of LNX wallet (Vue.js, Vuex, polkadot.js, TypeScript) FOAM Senior Blockchain Developer New York / USA - Front- and backend development of a TCR (Ethereum) based world map April 2018 – April 2019 http://map.foam.space (PureScript, Haskell) (contract + remote work) - PoC of Plasma MVP implementation with Cosmos (Go, PureScript) - Misc. (e2e, unit tests, Solidity) IOHK Cardano SL Developer – Team Haskell Hong Kong - Front- and backend development of Cardano‘s blockchain explorer Dec. 2016 – April 2018 https://cardanoexplorer.com (PureScript, Haskell) (contract + remote work) - Re-write of Daedalus wallet API (Haskell) - Developing API layer to bridge Daedalus wallet (PureScript) - Testing and re-factoring of Cardano-SL (Haskell) - Misc. PoC‘s (e.g. type generator Haskell to PureScript) 2012 - 2016 Web-, Mobile development Misc. projects / clients Senior Developer Cellular, SinnerSchrader, - Web / Mobile applications (Angular, Backbone, Ionic, Knockout, React, misc. startups, Volkswagen, React Native, RxJS, TypeScript, CoffeeScript, ES 6/7, RubyMotion) ZDF, TUI, etc. - Backend development (NodeJS, PHP, Zend, RabbitMQ, Ruby) - TDD / BDD / E2E (Karma, Istanbul, Mocha, Sinon, Enzyme, Webdriver, CucumberJS) 1999 - 2012 Web-, Desktop-, Mobile development Misc.
    [Show full text]
  • Towards Secure and Reusable Web Applications
    Mashups and Modularity: Towards Secure and Reusable Web Applications Antero Taivalsaari Tommi Mikkonen Sun Microsystems Laboratories [email protected] http://research.sun.com/projects/lively 2 Evolution of the Web 1) Simple pages with text and static images only (e.g., http://www.google.com) 2) Animated pages with plug-ins (e.g., http://www.cadillac.com) 3) Rich Internet Applications (e.g., docs.google.com) What's Next? 3 Web Applications – Implications • Web-based software will dramatically change the way people develop, deploy and use software. • No more installations! > Applications will simply run off the Web. • No more upgrades! > Always run the latest application version. • Instant worldwide deployment! > No middlemen or distributors needed. • No CPU dependencies, OS dependencies, ... > The Web is the Platform. 4 Unfortunately... • The web browser was not designed for running real applications. > It was designed in the early 1990s for viewing documents, forms and other page-structured artifacts – not applications. > Programming capabilities on the web were an afterthought, not something inherent in the design of the browser. • Various Rich Internet Application (RIA) technologies have been introduced recently to retrofit application execution capabilities into the web browser. 5 Web Development vs. Conventional Software The Impedance Mismatch Web Development Conventional SW Development - Documents - Applications - Page / form oriented interaction - Direct manipulation - Managed graphics, static layout - Directly drawn, dynamic
    [Show full text]
  • Diseño De Un Sistema De Monitorización De Dispositivos Móviles
    Departamento de Informática PROYECTO FIN DE GRADO DISEÑO DE UN SISTEMA DE MONITORIZACIÓN DE DISPOSITIVOS MÓVILES Autor: Antonio Becerra López Tutor: Luis Miguel Sánchez García Colmenarejo, Septiembre de 2012 1 Diseño de un sistema de monitorización de dispositivos móviles Título: Diseño de un sistema de monitorización de dispositivos móviles Autor: Antonio Becerra López Director: EL TRIBUNAL Presidente: Vocal: Secretario: Realizado el acto de defensa y lectura del Proyecto Fin de Carrera el día __ de _______ de 20__ en Leganés, en la Escuela Politécnica Superior de la Universidad Carlos III de Madrid, acuerda otorgarle la CALIFICACIÓN de VOCAL SECRETARIO PRESIDENTE 1 2 Diseño de un sistema de monitorización de dispositivos móviles Resumen AndroidMonitor es un sistema cuya finalidad consiste en monitorizar distribuidamente dispositivos móviles con el sistema operativo Android. Los teléfonos móviles en la actualidad son un elemento indispensable más de las personas junto con las llaves de casa y la cartera con los documentos personales. En el año 2011, la población total de la Tierra superaba la asombrosa cantidad de siete mil millones de personas. En ese mismo año, se calculaba que el número de teléfonos móviles en el mundo era superior a los 5.600 millones. Los dispositivos móviles cuentan con gran variedad de sensores: acelerómetro, sensor de luz, sensor de temperatura, barómetro, sensor de gravedad, sensor de presión; Sensores que recopilan información de su entorno que puede ser utilizada para comprar la situación del terminal. El objetivo de este proyecto es el análisis, el diseño y el desarrollo de un sistema para monitorizar remotamente los valores de los sensores de dispositivos móviles.
    [Show full text]
  • Download the Index
    Dewsbury.book Page 555 Wednesday, October 31, 2007 11:03 AM Index Symbols addHistoryListener method, Hyperlink wid- get, 46 $wnd object, JSNI, 216 addItem method, MenuBar widget, 68–69 & (ampersand), in GET and POST parameters, addLoadListener method, Image widget, 44 112–113 addMessage method, ChatWindowView class, { } (curly braces), JSON, 123 444–445 ? (question mark), GET requests, 112 addSearchResult method JUnit test case, 175 SearchResultsView class, 329 A addSearchView method, MultiSearchView class, 327 Abstract Factory pattern, 258–259 addStyleName method, connecting GWT widgets Abstract methods, 332 to CSS, 201 Abstract Window Toolkit (AWT), Java, 31 addToken method, handling back button, 199 AbstractImagePrototype object, 245 addTreeListener method, Tree widget, 67 Abstraction, DAOs and, 486 Adobe Flash and Flex, 6–7 AbstractMessengerService Aggregator pattern Comet, 474 defined, 34 Jetty Continuations, 477 Multi-Search application and, 319–321 action attribute, HTML form tag, 507 sample application, 35 Action-based web applications Aggregators, 320 overview of, 116 Ajax (Asynchronous JavaScript and XML) PHP scripts for building, 523 alternatives to, 6–8 ActionObjectDAO class, 527–530 application development and, 14–16 Actions, server integration with, 507–508 building web applications and, 479 ActionScript, 6 emergence of, 3–5 ActiveX, 7 Google Gears for storage, 306–309 Add Import command Same Origin policy and, 335 creating classes in Eclipse, 152 success and limitations of, 5–6 writing Java code using Eclipse Java editor,
    [Show full text]
  • Google Webtool
    Google Web Toolkit Stephen Bilston Stuart Johnson Eric Fath-Kolmes Ai Ci Lin Andrew Nisbet Presentation Goals What is GWT? An overview of GWT's features. When should I use GWT? Who's using it? Finally what you can do with it? What are the risks? What is Google Web Toolkit (GWT)? Develop Webapps using Java Compile the Java to X-browser Javascript Finally a magic bullet to fix Everything! What's so great about it Abstracts away HTML and CSS Makes Client server communcation easy Has robust 3rd party libaraies Easy deployment Eases Web development Lets you avoid HTML and CSS along with all there vairous oddities Many programmers already know java but don't know JavaScript, GWT moves the task of learning from new languages to what is effectively another library Writing javascript can be weird - GWT removes much of the weirdness Makes client server comuncation easy Two easy methods: GWT-RPC Almost makes server commuincation feel like local method calls Has rather good serialization functionality Request Factory Acts like a fake ORM(Object Relational Mapping) for the client side Normal Ajax if you really want to Has robust third party libaries Smart GWT Widgets Dual licensed Ext GWT More Widgets Dual licensed with reduced functionaliy Vaadin Widgets Server Side functionality(validation, etc) Easy depoyment Uses Java Servlets for GWT-RPC and Request Factory Lots of options(Tomcat, JBoss etc..) If your okay with the abstraction leaking a bit you can use anything to do generic AJAX Php Ruby Perl Whatever Using java server side is an easy sell Code Quality Concerns Debugging -With GWT, you can debug java byte code directly as it was executed in a simulated browser environment.
    [Show full text]