Fast, Easy, Beautiful: Pick Three Building User Interfaces with Google Web Toolkit. Chris Schalk October 24, 2007

Size: px
Start display at page:

Download "Fast, Easy, Beautiful: Pick Three Building User Interfaces with Google Web Toolkit. Chris Schalk October 24, 2007"

Transcription

1

2 Fast, Easy, Beautiful: Pick Three Building User Interfaces with Google Web Toolkit Chris Schalk October 24, 2007

3 Today s Topics The potential of Ajax - why we re all here GWT brings software engineering to Ajax Focus on the user and all else will follow Fast is better than slow Wrap-up Q & A 3 Copyright 2007 Google Inc.

4 In pre Ajax land Browsers are treated like HTML dumb terminals Everything is an HTTP round trip + history entry Tragic waste of young electrons potential in shuffling the same HTML over and over again not to mention your users time and attention. 4 Copyright 2007 Google Inc.

5 Real-world Example #1 Please do not use your browser s Back button What if I do click Back? Does it blow up, or what? Ajax can solve this at least in theory 5 Copyright 2007 Google Inc.

6 Real-world Example #2 Your credit card may be charged twice What if the network hangs? How would you feel if this were a stock trade? Ajax can solve this at least in theory 6 Copyright 2007 Google Inc.

7 The Ajax Architectural Shift - Yada yada Stateless HTML Browser Every user action Totally new page Stateful Server HTML Ajax Events handled locally Stateful JS and DHTML Browser Remote procedure calls Data only, not HTML Stateless (i.e. any) Server Copyright 2007 Google Inc.

8 Ajax is great! but..it can get a little tricky.. HTTPS?, [DX]?HTML ( ) (Strict Transitional) CSS[1-3] DOM Level [0-3] (Java ECMA J VB Action)Script (X VR? Math)ML SVG, Canvas, Flash JSONP?, SOAP, XML-RPC, SOA 8 Copyright 2007 Google Inc.

9 Or a LOT tricky! Proliferation of toolkits, frameworks Great! But hard to know what works with what! Back to notepad, vim, or perhaps textmate? Firebug helps though What if my background is Java? Okay, I admit it.. JavaScript scares me! Can start out easy but.. It s very easy to get in over your head This doesn t even begin to touch on performance 9 Copyright 2007 Google Inc.

10 What Is Google Web Toolkit (GWT)? Google Web Toolkit (GWT) is an open source Java software development framework that makes writing Ajax applications easy. 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. 10 Copyright 2007 Google Inc.

11 What Is Google Web Toolkit (GWT)? Build Ajax apps with Java technology TM GWT is much more than a compiler GWT brings software engineering to Ajax Important! GWT applets 11 Copyright 2007 Google Inc.

12 Hello, Ajax (Demo) public class Hello implements EntryPoint { public void onmoduleload() { Button b = new Button("Click me", new ClickListener() { public void onclick(widget sender) { Window.alert("Hello, Ajax"); } ); RootPanel.get().add(b); } } 12 Copyright 2007 Google Inc.

13 GWT Brings Software Engineering To Ajax Any Java IDE (or no IDE you rebel, you) Rapid edit/test/debug/refactor cycle Unit testing Reuse through jars Take advantage of OO design patterns Javadoc Compile-time errors You don t miss em until they re gone 13 Copyright 2007 Google Inc.

14 Lightweight Development Cycle (Demo) GWT development mimics normal web development Open GWT's hosted web browser Run your app Edit your source Refresh and repeat Changes are reflected instantly Debugging! 14 Copyright 2007 Google Inc.

15 The GWT Mission Focus on the user and all else will follow To radically improve the web experience for users by enabling developers to use existing Java tools to build no-compromise Ajax for any modern browser Users first Developers second Whenever possible, a very close second Gee-whiz technology is a distant third If you share this perspective, you ll like GWT 15 Copyright 2007 Google Inc.

16 Web Usability Fundamentals Remain Intact Let s not re-teach our parents how to use the web Focus on the basics Prefer native UI elements Support keyboard-only use Honor font size preferences User in control of browser at all times Speed is vital, especially at startup The ideal: feels like a traditional web app, just better 16 Copyright 2007 Google Inc.

17 History Simple history API Listening to history events Implement HistoryListener History.addHistoryListener(controller) Creating history events History.newItem("settings") History tokens form the basis of linkable URLs Hyperlink class automatically adds entries 17 Copyright 2007 Google Inc.

18 Localized Messages Efficient I18N Use interfaces to define type-safe template methods interface ErrorMessages extends Messages { String accessdenied(int errorcode, String username); } Create corresponding localized properties files accessdenied = Error {0}: {1} cannot access {2} Bind data with code using compile-time code generation Window.alert(msgs.accessDenied(515, username)) The above wouldn t compile :-) 18 Copyright 2007 Google Inc.

19 How to Communicate with the Server - RPC 19 Copyright 2007 Google Inc.

20 How to Communicate with the Server - RPC Provides bridge to server-side Java JDBC, Persistent frameworks, other Web Services, RPC give you the opportunity to move all of your UI logic to the client! An RPC service implementation must extend RemoteServiceServlet 20 Copyright 2007 Google Inc.

21 Styling With CSS Separating code and presentation Widgets publish CSS style names public ListBox(String caption) { setstylename("gwt-listbox"); } Write CSS rules that bind to widgets.gwt-listbox { background-color: yellow; color: black; } Facilitates loose coupling between CSS and code 21 Copyright 2007 Google Inc.

22 Usability Without Sacrificing Speed (Demos) Kitchen Sink Fast startup and reasonable script size Client-side MVC and lazy UI creation Native look and feel History and bookmarks Mail Styling with CSS Fancier widgets Handling window resizing 22 Copyright 2007 Google Inc.

23 Lots of Stuff Here DOM, AbsolutePanel, AbstractImagePanel, AbstractImagePrototype, Button, ButtonBase, CellPanel, ChangeListenerCollection, CheckBox, ClickListenerCollection, ClippedImagePrototype, ComplexPanel, Composite, DeckPanel, DialogBox, DisclosurePanel, DockPanel, FileUpload, FlexTable, FlowPanel, FocusListenerAdapter, FocusListenerCollection, FocusPanel, FocusWidget, FormHandlerCollection, FormPanel, FormSubmitCompleteEvent, FormSubmitEvent, Frame, Grid, HorizontalPanel, HorizontalSplitPanel, HTML, HTMLPanel, HTMLTable, Hyperlink, Image, KeyboardListenerAdapter, KeyboardListenerCollection, Label, ListBox, LoadListenerCollection, MenuBar, MenuItem, PushButton, MouseListenerAdapter, MouseListenerCollection, NamedFrame, Panel, PasswordTextBox, PopupListenerCollection, PopupPanel, RadioButton, RichTextArea, RootPanel, ScrollListenerCollection, ScrollPanel, SimplePanel, StackPanel, SuggestBox, TabBar, TableListenerCollection, TabListenerCollection, TabPanel, TextArea, TextBox, TextBoxBase, ToggleButton, Tree, TreeItem, TreeListenerCollection, UIObject, VerticalPanel, VerticalSplitPanel, Widget, WidgetCollection User Interface DOMException, XMLParser, Attr, CDATASection, CharacterData, Comment, Document, DocumentFragment, Element, EntityReference, NamedNodeMap, Node, NodeList, ProcessingInstruction, Text, AsyncCallback, IsSerializable, RemoteService, RemoteServiceServlet, RPC, ServiceDefTarget, JSONArray, JSONBoolean, JSONException, JSONNull, JSONNumber, JSONObject, JSONParser, JSONString, JSONValue, Header, Request, RequestBuilder, RequestCallback, RequestException, Response, URL Client/Server Data Exchange (RPC, HTTP, JSON, XML) GWTTestCase, Benchmark, Command, DeferredCommand, IncrementalCommand, History, Timer, Localizable, Constants, DateTimeFormat, Dictionary, ConstantsWithLookup, Messages, NumberFormat, ImageBundle Quality and Usability (JUnit, Benchmarking, History, Bundling, I18N) Boolean, Byte, Character, Double, Float, Integer, Long, Math, Number, Object, Short, String, StringBuffer, System, CharSequence, Comparable, AbstractCollection, AbstractList, AbstractMap, AbstractSet, ArrayList, Arrays, Collections, Date, EventObject, HashMap, HashSet, Stack, Vector, Collection, Iterator, List, ListIterator, Map, Set JRE Emulation 23 Copyright 2007 Google Inc.

24 Fast Is Better Than Slow No-compromise speed Speed is a critical component of usability Making complex Ajax code work at all is hard enough Will you have the opportunity to make it fast, too? We take speed very seriously GWT 1.4 includes a benchmarking subsystem Speed is designed into the GWT architecture Let s see how this played out over the past year 24 Copyright 2007 Google Inc.

25 Only Pay For What You Use Size matters 60,000 Compiled Script Size (bytes) 50,000 40,000 30,000 20,000 10,000 0 Empty Window.alert("hello") VerticalPanel Button CheckBox Tree (3 items) Label TextBox Grid (4 x 4) HTML Image TabPanel (3 tabs) ListBox (3 items) Radio Button (3) Hyperlink HorizontalPanel FlowPanel AbsolutePanel Additional Widgets 25 Copyright 2007 Google Inc.

26 Better Usability From Less Bandwidth How you move your bits matters, too 26 Copyright 2007 Google Inc.

27 HTTP Traffic Optimizations Yes, we actually count every HTTP request # HTTP Requests First Run Subsequent Runs 27 Copyright 2007 Google Inc.

28 Compiler Size Optimizations With GWT, a smaller app is only a download + recompile away 120, , Script Size (bytes) 80,000 60,000 40, ,000 0 Uncompressed Compressed 28 Copyright 2007 Google Inc.

29 RPC Speed Optimizations With GWT, a faster app is also only a download + recompile away RPC Round Trip Time (ms) FireFox Internet Explorer 6 Opera 9.2 Safari Copyright 2007 Google Inc.

30 Not Enough Time To Demo Everything Unit tests, benchmarking, internationalization, Automatic inclusion of external JS and CSS Deferred binding Only download the appropriate compiled JavaScript Everything is cross-browser IE6.0,7.0, FF 1.0.x,1.5.x, 2.0, Safari 2.0.x, 3.0*, Opera 9.x Your choice of development platforms Mac OS X, Linux, Windows Your choice of IDEs IntelliJ IDEA, Eclipse, NetBeans, JCreator, JDeveloper 30 Copyright 2007 Google Inc.

31 Fully Open Source Yeah! Licensed under Apache 2.0 Source available on Google Code Making GWT Better The spirit of GWT, including design axioms Great community 10,341+ members in the GWT Developer Forum 485+ members in the GWT Contributors Forum Many external patches included in GWT Copyright 2007 Google Inc.

32 Documentation Included Getting Started Guide Widget Gallery Developer Guide Class Reference 32 Copyright 2007 Google Inc.

33 One Year Later GWT is growing up Comprehensive IDE support for GWT (WYSIWYG, too) IntelliJ IDEA, Eclipse, NetBeans, VistaFei, Major applications in production and in development Google Checkout, Google Base, Add-on libraries and sample code 100+ projects on Google Code alone Books and articles for details Over 2 million downloads of GWT since launch! 33 Copyright 2007 Google Inc.

34 What's New In GWT 1.4? Biggest release yet No longer beta! 200+ features and fixes Major size and speed optimizations ImageBundle! New widgets RichTextArea, SuggestBox, Vertical/HorizontalSplitPanel, PushButton, ToggleButton, DisclosurePanel Library enhancements NumberFormat, DateTimeFormat Benchmarking subsystem RPC now supports non-servlet Java back ends 34 Copyright 2007 Google Inc.

35 Summary You need leverage to use Ajax well with low risk PhD in browser quirks is no longer a hiring prereq Turn AJAX development into software engineering GWT rewards using good engineering practices We will share our best work and ideas with you, and we hope you will return the favor Your homework assignment: Go to: code.google.com & click on Google Web Toolkit 35 Copyright 2007 Google Inc.

36 Q & A 36 Copyright 2007 Google Inc.

37

Google Web Toolkit GWT

Google Web Toolkit GWT THE INTERNET,mapped on the opposite page, is a scalefree network in that Google Web Toolkit dis.'~tj port,from BYALBERTU\SZLOBARABASI ANDERICBONABEAU THE INTERNET,mapped on the opposite page, is a scalefree

More information

WA 2. GWT Martin Klíma

WA 2. GWT Martin Klíma WA 2 GWT Martin Klíma GWT What is it? Google Web Toolkig Compiler from Java to JavaScript + HTML Set of JavaScript and Java scripts / classes Development environment SDK Integration with IDE Eclipse, Netbeans,

More information

Google Web Toolkit. Introduction to GWT Development. Ilkka Rinne & Sampo Savolainen / Spatineo Oy

Google Web Toolkit. Introduction to GWT Development. Ilkka Rinne & Sampo Savolainen / Spatineo Oy Google Web Toolkit Introduction to GWT Development Ilkka Rinne & Sampo Savolainen / Spatineo Oy GeoMashup CodeCamp 2011 University of Helsinki Department of Computer Science Google Web Toolkit Google Web

More information

Google Web Toolkit. Progetto di Applicazioni Software a.a. 2011/12. Massimo Mecella

Google Web Toolkit. Progetto di Applicazioni Software a.a. 2011/12. Massimo Mecella Google Web Toolkit Progetto di Applicazioni Software a.a. 2011/12 Massimo Mecella Introduction Ajax (Asynchronous JavaScript and XML) refers to a broad range of techniques Beyond the technical jargon,

More information

Google Web Toolkit (GWT) Architectural Impact on Enterprise Web Application

Google Web Toolkit (GWT) Architectural Impact on Enterprise Web Application Google Web Toolkit (GWT) Architectural Impact on Enterprise Web Application First Generation HTTP request (URL or Form posting) W HTTP response (HTML Document) W Client Tier Server Tier Data Tier Web CGI-Scripts

More information

Google Web Toolkit. Peter Norrhall

Google Web Toolkit. Peter Norrhall Google Web Toolkit Peter Norrhall Ajax och JavaScript Frågor! Papyrus - Pappersgrossist - B2B E-handel - 19 Länder/Språk - drygt 1 miljard i omsättning - Revival-projekt Bakgrund o Historik Pre-Ajax Ajax

More information

Progressive Enhancement With GQuery and GWT. Ray Cromwell [email protected]

Progressive Enhancement With GQuery and GWT. Ray Cromwell ray@timefire.com Progressive Enhancement With GQuery and GWT Ray Cromwell [email protected] Web Application Models Web 1.0, 1 Interaction = 1 Page Refresh Pure JS, No Navigation Away from Page Mixed Model, Page Reloads

More information

Credits: Some of the slides are based on material adapted from www.telerik.com/documents/telerik_and_ajax.pdf

Credits: Some of the slides are based on material adapted from www.telerik.com/documents/telerik_and_ajax.pdf 1 The Web, revisited WEB 2.0 [email protected] Credits: Some of the slides are based on material adapted from www.telerik.com/documents/telerik_and_ajax.pdf 2 The old web: 1994 HTML pages (hyperlinks)

More information

Introducing Apache Pivot. Greg Brown, Todd Volkert 6/10/2010

Introducing Apache Pivot. Greg Brown, Todd Volkert 6/10/2010 Introducing Apache Pivot Greg Brown, Todd Volkert 6/10/2010 Speaker Bios Greg Brown Senior Software Architect 15 years experience developing client and server applications in both services and R&D Apache

More information

Front-End Performance Testing and Optimization

Front-End Performance Testing and Optimization Front-End Performance Testing and Optimization Abstract Today, web user turnaround starts from more than 3 seconds of response time. This demands performance optimization on all application levels. Client

More information

place/business fetch details, 184 185 removefromfavorite () function, 189 search button handler bind, 190 191 B BlackBerry build environment

place/business fetch details, 184 185 removefromfavorite () function, 189 search button handler bind, 190 191 B BlackBerry build environment Index A addtofavorite() method, 175 177, 188 189 Android ADT Plugin for Eclipse installation, 22 24 application, GWT Build Path, 244 device info, 247 directory structure, 244, 245 Eclipse classpath, 244

More information

Django and Pyjamas. Django and Pyjamas mariage as an alternative way to create Web Applications. Pawel Prokop. pawel.prokop@adfinem.

Django and Pyjamas. Django and Pyjamas mariage as an alternative way to create Web Applications. Pawel Prokop. pawel.prokop@adfinem. + and and mariage as an alternative way to create Web Applications [email protected] November 24, 2011 Copyright c and + I ll tell a story about some mariage.........

More information

An introduction to creating Web 2.0 applications in Rational Application Developer Version 8.0

An introduction to creating Web 2.0 applications in Rational Application Developer Version 8.0 An introduction to creating Web 2.0 applications in Rational Application Developer Version 8.0 September 2010 Copyright IBM Corporation 2010. 1 Overview Rational Application Developer, Version 8.0, contains

More information

Deepak Patil (Technical Director) [email protected] iasys Technologies Pvt. Ltd.

Deepak Patil (Technical Director) pdeepak@iasys.co.in iasys Technologies Pvt. Ltd. Deepak Patil (Technical Director) [email protected] iasys Technologies Pvt. Ltd. The term rich Internet application (RIA) combines the flexibility, responsiveness, and ease of use of desktop applications

More information

Rich Web Applications in Server-side Java without Plug-ins or JavaScript

Rich Web Applications in Server-side Java without Plug-ins or JavaScript Rich Web Applications in Server-side Java without Plug-ins or JavaScript Joonas Lehtinen, PhD Vaadin Ltd - CEO vaadin.com/vaadin @joonaslehtinen Rich Web Applications in Server-side Java without Plug-ins

More information

The Google Web Toolkit (GWT): Overview & Getting Started

The Google Web Toolkit (GWT): Overview & Getting Started 2013 Marty Hall & Yaakov Chaikin The Google Web Toolkit (GWT): Overview & Getting Started (GWT 2.5 Version) Originals of Slides and Source Code for Examples: http://courses.coreservlets.com/course-materials/gwt.html

More information

Lab 0 (Setting up your Development Environment) Week 1

Lab 0 (Setting up your Development Environment) Week 1 ECE155: Engineering Design with Embedded Systems Winter 2013 Lab 0 (Setting up your Development Environment) Week 1 Prepared by Kirill Morozov version 1.2 1 Objectives In this lab, you ll familiarize yourself

More information

Mobile Game and App Development the Easy Way

Mobile Game and App Development the Easy Way Mobile Game and App Development the Easy Way Developed and maintained by Pocketeers Limited (http://www.pocketeers.co.uk). For support please visit http://www.appeasymobile.com This document is protected

More information

Data Visualization in Ext Js 3.4

Data Visualization in Ext Js 3.4 White Paper Data Visualization in Ext Js 3.4 Ext JS is a client-side javascript framework for rapid development of cross-browser interactive Web applications using techniques such as Ajax, DHTML and DOM

More information

The Google Web Toolkit (GWT): Declarative Layout with UiBinder Basics

The Google Web Toolkit (GWT): Declarative Layout with UiBinder Basics 2013 Marty Hall & Yaakov Chaikin The Google Web Toolkit (GWT): Declarative Layout with UiBinder Basics (GWT 2.5 Version) Originals of Slides and Source Code for Examples: http://courses.coreservlets.com/course-materials/gwt.html

More information

Learning HTML5 Game Programming

Learning HTML5 Game Programming Learning HTML5 Game Programming A Hands-on Guide to Building Online Games Using Canvas, SVG, and WebGL James L. Williams AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York

More information

Selenium Automation set up with TestNG and Eclipse- A Beginners Guide

Selenium Automation set up with TestNG and Eclipse- A Beginners Guide Selenium Automation set up with TestNG and Eclipse- A Beginners Guide Authors: Eevuri Sri Harsha, Ranjani Sivagnanam Sri Harsha is working as an Associate Software Engineer (QA) for IBM Policy Atlas team

More information

Debugging JavaScript and CSS Using Firebug. Harman Goei CSCI 571 1/27/13

Debugging JavaScript and CSS Using Firebug. Harman Goei CSCI 571 1/27/13 Debugging JavaScript and CSS Using Firebug Harman Goei CSCI 571 1/27/13 Notice for Copying JavaScript Code from these Slides When copying any JavaScript code from these slides, the console might return

More information

How To Write An Ria Application

How To Write An Ria Application Document Reference TSL-SES-WP-0001 Date 4 January 2008 Issue 1 Revision 0 Status Final Document Change Log Version Pages Date Reason of Change 1.0 Draft 17 04/01/08 Initial version The Server Labs S.L

More information

Enterprise Application Development In Java with AJAX and ORM

Enterprise Application Development In Java with AJAX and ORM Enterprise Application Development In Java with AJAX and ORM ACCU London March 2010 ACCU Conference April 2010 Paul Grenyer Head of Software Engineering [email protected] http://paulgrenyer.blogspot.com

More information

Preface. Motivation for this Book

Preface. Motivation for this Book Preface Asynchronous JavaScript and XML (Ajax or AJAX) is a web technique to transfer XML data between a browser and a server asynchronously. Ajax is a web technique, not a technology. Ajax is based on

More information

Automation using Selenium

Automation using Selenium Table of Contents 1. A view on Automation Testing... 3 2. Automation Testing Tools... 3 2.1 Licensed Tools... 3 2.1.1 Market Growth & Productivity... 4 2.1.2 Current Scenario... 4 2.2 Open Source Tools...

More information

What s New in IBM Web Experience Factory 8.5. 2014 IBM Corporation

What s New in IBM Web Experience Factory 8.5. 2014 IBM Corporation What s New in IBM Web Experience Factory 8.5 2014 IBM Corporation Recent history and roadmap Web Experience Factory 8.0 2012 Multi-channel Client-side mobile Aligned with Portal 8 Developer productivity

More information

CrownPeak Java Web Hosting. Version 0.20

CrownPeak Java Web Hosting. Version 0.20 CrownPeak Java Web Hosting Version 0.20 2014 CrownPeak Technology, Inc. All rights reserved. No part of this document may be reproduced or transmitted in any form or by any means, electronic or mechanical,

More information

Lucy Zhang UI Developer [email protected]/[email protected] Contact: 646-896-9088

Lucy Zhang UI Developer Lucyzhang3630@gmail.com/sales@besthtech.net Contact: 646-896-9088 Lucy Zhang UI Developer [email protected]/[email protected] Contact: 646-896-9088 SUMMARY Over 7 years of extensive experience in the field of front-end Web Development including Client/Server

More information

ORACLE ADF MOBILE DATA SHEET

ORACLE ADF MOBILE DATA SHEET ORACLE ADF MOBILE DATA SHEET PRODUCTIVE ENTERPRISE MOBILE APPLICATIONS DEVELOPMENT KEY FEATURES Visual and declarative development Java technology enables cross-platform business logic Mobile optimized

More information

Java with Eclipse: Setup & Getting Started

Java with Eclipse: Setup & Getting Started Java with Eclipse: Setup & Getting Started Originals of slides and source code for examples: http://courses.coreservlets.com/course-materials/java.html Also see Java 8 tutorial: http://www.coreservlets.com/java-8-tutorial/

More information

How To Write A Web Server In Javascript

How To Write A Web Server In Javascript LIBERATED: A fully in-browser client and server web application debug and test environment Derrell Lipman University of Massachusetts Lowell Overview of the Client/Server Environment Server Machine Client

More information

DreamFactory & Modus Create Case Study

DreamFactory & Modus Create Case Study DreamFactory & Modus Create Case Study By Michael Schwartz Modus Create April 1, 2013 Introduction DreamFactory partnered with Modus Create to port and enhance an existing address book application created

More information

Browser tools that make web development easier. Alan Seiden Consulting alanseiden.com

Browser tools that make web development easier. Alan Seiden Consulting alanseiden.com Browser tools that make web development easier alanseiden.com My focus Advancing PHP on IBM i PHP project leader, Zend/IBM Toolkit Contributor, Zend Framework DB2/i enhancements Developer, Best Web Solution,

More information

HTML Form Widgets. Review: HTML Forms. Review: CGI Programs

HTML Form Widgets. Review: HTML Forms. Review: CGI Programs HTML Form Widgets Review: HTML Forms HTML forms are used to create web pages that accept user input Forms allow the user to communicate information back to the web server Forms allow web servers to generate

More information

ORACLE MOBILE APPLICATION FRAMEWORK DATA SHEET

ORACLE MOBILE APPLICATION FRAMEWORK DATA SHEET ORACLE MOBILE APPLICATION FRAMEWORK DATA SHEET PRODUCTIVE ENTERPRISE MOBILE APPLICATIONS DEVELOPMENT KEY FEATURES Visual and declarative development Mobile optimized user experience Simplified access to

More information

AJAX. Gregorio López López [email protected] Juan Francisco López Panea [email protected]

AJAX. Gregorio López López glopez@it.uc3m.es Juan Francisco López Panea 100032757@alumnos.uc3m.es AJAX Gregorio López López [email protected] Juan Francisco López Panea [email protected] Departamento de Ingeniería Telemática Universidad Carlos III de Madrid Contents 1. Introduction 2. Overview

More information

Coding for Desktop and Mobile with HTML5 and Java EE 7

Coding for Desktop and Mobile with HTML5 and Java EE 7 Coding for Desktop and Mobile with HTML5 and Java EE 7 Coding for Desktop and Mobile with HTML5 and Java EE 7 Geertjan Wielenga - NetBeans - DukeScript - VisualVM - Jfugue Music Notepad - Java - JavaScript

More information

Mobile Performance: for excellent User Experience

Mobile Performance: for excellent User Experience Mobile Performance: for excellent User Experience Suyash Joshi @suyashcjoshi Mobile UX Developer 1 A quick audience survey... 2 Overview of Presentation 1st half: Mobile Web Performance Optimization (WPO)

More information

Firefox for Android. Reviewer s Guide. Contact us: [email protected]

Firefox for Android. Reviewer s Guide. Contact us: press@mozilla.com Reviewer s Guide Contact us: [email protected] Table of Contents About Mozilla Firefox 1 Move at the Speed of the Web 2 Get Started 3 Mobile Browsing Upgrade 4 Get Up and Go 6 Customize On the Go 7 Privacy

More information

Performance Testing Web 2.0. Stuart Moncrieff (Load Testing Guru) www.jds.net.au / www.myloadtest.com

Performance Testing Web 2.0. Stuart Moncrieff (Load Testing Guru) www.jds.net.au / www.myloadtest.com Performance Testing Web 2.0 Stuart Moncrieff (Load Testing Guru) www.jds.net.au / www.myloadtest.com 1 Foundations of Web 2.0 (a history lesson) 1993 The National Center for Supercomputing Applications

More information

Developer Tutorial Version 1. 0 February 2015

Developer Tutorial Version 1. 0 February 2015 Developer Tutorial Version 1. 0 Contents Introduction... 3 What is the Mapzania SDK?... 3 Features of Mapzania SDK... 4 Mapzania Applications... 5 Architecture... 6 Front-end application components...

More information

An introduction to creating JSF applications in Rational Application Developer Version 8.0

An introduction to creating JSF applications in Rational Application Developer Version 8.0 An introduction to creating JSF applications in Rational Application Developer Version 8.0 September 2010 Copyright IBM Corporation 2010. 1 Overview Although you can use several Web technologies to create

More information

Android Mobile App Building Tutorial

Android Mobile App Building Tutorial Android Mobile App Building Tutorial Seidenberg-CSIS, Pace University This mobile app building tutorial is for high school and college students to participate in Mobile App Development Contest Workshop.

More information

AUTOMATED CONFERENCE CD-ROM BUILDER AN OPEN SOURCE APPROACH Stefan Karastanev

AUTOMATED CONFERENCE CD-ROM BUILDER AN OPEN SOURCE APPROACH Stefan Karastanev International Journal "Information Technologies & Knowledge" Vol.5 / 2011 319 AUTOMATED CONFERENCE CD-ROM BUILDER AN OPEN SOURCE APPROACH Stefan Karastanev Abstract: This paper presents a new approach

More information

Working with RD Web Access in Windows Server 2012

Working with RD Web Access in Windows Server 2012 Working with RD Web Access in Windows Server 2012 Introduction to RD Web Access So far in this series we have talked about how to successfully deploy and manage a Microsoft Windows Server 2012 VDI environment.

More information

Implementing Mobile Thin client Architecture For Enterprise Application

Implementing Mobile Thin client Architecture For Enterprise Application Research Paper Implementing Mobile Thin client Architecture For Enterprise Paper ID IJIFR/ V2/ E1/ 037 Page No 131-136 Subject Area Information Technology Key Words JQuery Mobile, JQuery Ajax, REST, JSON

More information

Introduction to BlackBerry Smartphone Web Development Widgets

Introduction to BlackBerry Smartphone Web Development Widgets Introduction to BlackBerry Smartphone Web Development Widgets Trainer name Date 2009 Research In Motion Limited V1.00 are stand-alone BlackBerry applications that consist of standard web components, including

More information

Rich Internet Applications

Rich Internet Applications Rich Internet Applications Prepared by: Husen Umer Supervisor: Kjell Osborn IT Department Uppsala University 8 Feb 2010 Agenda What is RIA? RIA vs traditional Internet applications. Why to use RIAs? Running

More information

Lecture 4 Cross-Platform Development. <lecturer, date>

Lecture 4 Cross-Platform Development. <lecturer, date> Lecture 4 Cross-Platform Development Outline Cross-Platform Development PhoneGap Appcelerator Titanium Xamarin References Native Development Represents the baseline for comparisons You

More information

Fast track to HTML & CSS 101 (Web Design)

Fast track to HTML & CSS 101 (Web Design) Fast track to HTML & CSS 101 (Web Design) Level: Introduction Duration: 5 Days Time: 9:30 AM - 4:30 PM Cost: 997.00 Overview Fast Track your HTML and CSS Skills HTML and CSS are the very fundamentals of

More information

RIA Technologies Comparison

RIA Technologies Comparison RIA Technologies Comparison Focus Since the subject is huge I will first present a general view and then focus on more ( hopefully ) interesting parts Also, some key points need to be established: Technologies

More information

Web Application Development

Web Application Development L i m n o r S t u d i o U s e r s G u i d e P a g e 1 Web Application Development Last update: January 29, 2015 Contents Introduction... 3 Create a project for web application... 3 Select Web Application

More information

NetBeans IDE Field Guide

NetBeans IDE Field Guide NetBeans IDE Field Guide Copyright 2005 Sun Microsystems, Inc. All rights reserved. Table of Contents Introduction to J2EE Development in NetBeans IDE...1 Configuring the IDE for J2EE Development...2 Getting

More information

Budget Event Management Design Document

Budget Event Management Design Document Budget Event Management Design Document Team 4 Yifan Yin(TL), Jiangnan Shangguan, Yuan Xia, Di Xu, Xuan Xu, Long Zhen 1 Purpose Summary List of Functional Requirements General Priorities Usability Accessibility

More information

Mobile development with Apache OFBiz. Ean Schuessler, co-founder @ Brainfood

Mobile development with Apache OFBiz. Ean Schuessler, co-founder @ Brainfood Mobile development with Apache OFBiz Ean Schuessler, co-founder @ Brainfood Mobile development For the purposes of this talk mobile development means mobile web development The languages and APIs for native

More information

Design Approaches of Web Application with Efficient Performance in JAVA

Design Approaches of Web Application with Efficient Performance in JAVA IJCSNS International Journal of Computer Science and Network Security, VOL.11 No.7, July 2011 141 Design Approaches of Web Application with Efficient Performance in JAVA OhSoo Kwon and HyeJa Bang Dept

More information

Android Developer Fundamental 1

Android Developer Fundamental 1 Android Developer Fundamental 1 I. Why Learn Android? Technology for life. Deep interaction with our daily life. Mobile, Simple & Practical. Biggest user base (see statistics) Open Source, Control & Flexibility

More information

Setting Up a Development Server

Setting Up a Development Server 2 Setting Up a Development Server If you wish to develop Internet applications but don t have your own development server, you will have to upload every modification you make to a server somewhere else

More information

AJAX and jmaki for Web 2.0 Development using Java. Inyoung Cho Java Technology Evangelist Sun Microsystems, Inc.

AJAX and jmaki for Web 2.0 Development using Java. Inyoung Cho Java Technology Evangelist Sun Microsystems, Inc. AJAX and jmaki for Web 2.0 Development using Java Inyoung Cho Java Technology Evangelist Sun Microsystems, Inc. Agenda AJAX Basics > What is AJAX? > AJAX Interaction:Using AutoComplete Sample Application

More information

WompMobile Technical FAQ

WompMobile Technical FAQ WompMobile Technical FAQ What are the technical benefits of WompMobile? The mobile site has the same exact URL as the desktop website. The mobile site automatically and instantly syncs with the desktop

More information

Software Development Interactief Centrum voor gerichte Training en Studie Edisonweg 14c, 1821 BN Alkmaar T: 072 511 12 23

Software Development Interactief Centrum voor gerichte Training en Studie Edisonweg 14c, 1821 BN Alkmaar T: 072 511 12 23 Microsoft SharePoint year SharePoint 2013: Search, Design and 2031 Publishing New SharePoint 2013: Solutions, Applications 2013 and Security New SharePoint 2013: Features, Delivery and 2010 Development

More information

Team Members: Christopher Copper Philip Eittreim Jeremiah Jekich Andrew Reisdorph. Client: Brian Krzys

Team Members: Christopher Copper Philip Eittreim Jeremiah Jekich Andrew Reisdorph. Client: Brian Krzys Team Members: Christopher Copper Philip Eittreim Jeremiah Jekich Andrew Reisdorph Client: Brian Krzys June 17, 2014 Introduction Newmont Mining is a resource extraction company with a research and development

More information

Rapid Application Development. and Application Generation Tools. Walter Knesel

Rapid Application Development. and Application Generation Tools. Walter Knesel Rapid Application Development and Application Generation Tools Walter Knesel 5/2014 Java... A place where many, many ideas have been tried and discarded. A current problem is it's success: so many libraries,

More information

Java 7 Recipes. Freddy Guime. vk» (,\['«** g!p#« Carl Dea. Josh Juneau. John O'Conner

Java 7 Recipes. Freddy Guime. vk» (,\['«** g!p#« Carl Dea. Josh Juneau. John O'Conner 1 vk» Java 7 Recipes (,\['«** - < g!p#«josh Juneau Carl Dea Freddy Guime John O'Conner Contents J Contents at a Glance About the Authors About the Technical Reviewers Acknowledgments Introduction iv xvi

More information

Zend Server 4.0 Beta 2 Release Announcement What s new in Zend Server 4.0 Beta 2 Updates and Improvements Resolved Issues Installation Issues

Zend Server 4.0 Beta 2 Release Announcement What s new in Zend Server 4.0 Beta 2 Updates and Improvements Resolved Issues Installation Issues Zend Server 4.0 Beta 2 Release Announcement Thank you for your participation in the Zend Server 4.0 beta program. Your involvement will help us ensure we best address your needs and deliver even higher

More information

SelectSurvey.NET Developers Manual

SelectSurvey.NET Developers Manual Developers Manual (Last updated: 6/24/2012) SelectSurvey.NET Developers Manual Table of Contents: SelectSurvey.NET Developers Manual... 1 Overview... 2 General Design... 2 Debugging Source Code with Visual

More information

Performance Testing for Ajax Applications

Performance Testing for Ajax Applications Radview Software How to Performance Testing for Ajax Applications Rich internet applications are growing rapidly and AJAX technologies serve as the building blocks for such applications. These new technologies

More information

Thin@ System Architecture V3.2. Last Update: August 2015

Thin@ System Architecture V3.2. Last Update: August 2015 Thin@ System Architecture V3.2 Last Update: August 2015 Introduction http://www.thinetsolution.com Welcome to Thin@ System Architecture manual! Modern business applications are available to end users as

More information

IBM Script Portlet for WebSphere Portal Release 1.1

IBM Script Portlet for WebSphere Portal Release 1.1 IBM Script Portlet for WebSphere Portal Release 1.1 Topics Why script applications for WebSphere Portal The Script Portlet approach and its benefits Using Script Portlet Accessing data and services Downloadable

More information

How To Test Your Web Site On Wapt On A Pc Or Mac Or Mac (Or Mac) On A Mac Or Ipad Or Ipa (Or Ipa) On Pc Or Ipam (Or Pc Or Pc) On An Ip

How To Test Your Web Site On Wapt On A Pc Or Mac Or Mac (Or Mac) On A Mac Or Ipad Or Ipa (Or Ipa) On Pc Or Ipam (Or Pc Or Pc) On An Ip Load testing with WAPT: Quick Start Guide This document describes step by step how to create a simple typical test for a web application, execute it and interpret the results. A brief insight is provided

More information

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013 Mobility Introduction Android Duration 16 Working days Start Date 1 st Oct 2013 Day 1 1. Introduction to Mobility 1.1. Mobility Paradigm 1.2. Desktop to Mobile 1.3. Evolution of the Mobile 1.4. Smart phone

More information

JavaFX Session Agenda

JavaFX Session Agenda JavaFX Session Agenda 1 Introduction RIA, JavaFX and why JavaFX 2 JavaFX Architecture and Framework 3 Getting Started with JavaFX 4 Examples for Layout, Control, FXML etc Current day users expect web user

More information

SUBJECT CODE : 4074 PERIODS/WEEK : 4 PERIODS/ SEMESTER : 72 CREDIT : 4 TIME SCHEDULE UNIT TOPIC PERIODS 1. INTERNET FUNDAMENTALS & HTML Test 1

SUBJECT CODE : 4074 PERIODS/WEEK : 4 PERIODS/ SEMESTER : 72 CREDIT : 4 TIME SCHEDULE UNIT TOPIC PERIODS 1. INTERNET FUNDAMENTALS & HTML Test 1 SUBJECT TITLE : WEB TECHNOLOGY SUBJECT CODE : 4074 PERIODS/WEEK : 4 PERIODS/ SEMESTER : 72 CREDIT : 4 TIME SCHEDULE UNIT TOPIC PERIODS 1. INTERNET FUNDAMENTALS & HTML Test 1 16 02 2. CSS & JAVASCRIPT Test

More information

Developing ASP.NET MVC 4 Web Applications MOC 20486

Developing ASP.NET MVC 4 Web Applications MOC 20486 Developing ASP.NET MVC 4 Web Applications MOC 20486 Course Outline Module 1: Exploring ASP.NET MVC 4 The goal of this module is to outline to the students the components of the Microsoft Web Technologies

More information

Simply type the id# in the search mechanism of ACS Skills Online to access the learning assets outlined below.

Simply type the id# in the search mechanism of ACS Skills Online to access the learning assets outlined below. Programming Practices Learning assets Simply type the id# in the search mechanism of ACS Skills Online to access the learning assets outlined below. Titles Debugging: Attach the Visual Studio Debugger

More information

slides at goo.gl/kifue

slides at goo.gl/kifue chrome slides at goo.gl/kifue 1/29 The Mobile Web Developer's Tool Belt Pete LePage Developer Advocate, Google 2/29 Tooling In The Web Dev Lifecycle Development Environments Authoring Abstractions Frameworks

More information

Advantage of Jquery: T his file is downloaded from

Advantage of Jquery: T his file is downloaded from What is JQuery JQuery is lightweight, client side JavaScript library file that supports all browsers. JQuery is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling,

More information

End User Monitoring. AppDynamics Pro Documentation. Version 4.1.8. Page 1

End User Monitoring. AppDynamics Pro Documentation. Version 4.1.8. Page 1 End User Monitoring AppDynamics Pro Documentation Version 4.1.8 Page 1 End User Monitoring....................................................... 4 Browser Real User Monitoring.............................................

More information

Using HTML5 Pack for ADOBE ILLUSTRATOR CS5

Using HTML5 Pack for ADOBE ILLUSTRATOR CS5 Using HTML5 Pack for ADOBE ILLUSTRATOR CS5 ii Contents Chapter 1: Parameterized SVG.....................................................................................................1 Multi-screen SVG.......................................................................................................4

More information

YouTrack MPS case study

YouTrack MPS case study YouTrack MPS case study A case study of JetBrains YouTrack use of MPS Valeria Adrianova, Maxim Mazin, Václav Pech What is YouTrack YouTrack is an innovative, web-based, keyboard-centric issue and project

More information

Web-JISIS Reference Manual

Web-JISIS Reference Manual 23 March 2015 Author: Jean-Claude Dauphin [email protected] I. Web J-ISIS Architecture Web-JISIS Reference Manual Web-JISIS is a Rich Internet Application (RIA) whose goal is to develop a web top application

More information

SOA, case Google. Faculty of technology management 07.12.2009 Information Technology Service Oriented Communications CT30A8901.

SOA, case Google. Faculty of technology management 07.12.2009 Information Technology Service Oriented Communications CT30A8901. Faculty of technology management 07.12.2009 Information Technology Service Oriented Communications CT30A8901 SOA, case Google Written by: Sampo Syrjäläinen, 0337918 Jukka Hilvonen, 0337840 1 Contents 1.

More information

Building Rich Internet Applications with PHP and Zend Framework

Building Rich Internet Applications with PHP and Zend Framework Building Rich Internet Applications with PHP and Zend Framework Stanislav Malyshev Software Architect, Zend Technologies IDG: RIAs offer the potential for a fundamental shift in the experience of Internet

More information

CaptainCasa. CaptainCasa Enterprise Client. CaptainCasa Enterprise Client. Feature Overview

CaptainCasa. CaptainCasa Enterprise Client. CaptainCasa Enterprise Client. Feature Overview Feature Overview Page 1 Technology Client Server Client-Server Communication Client Runtime Application Deployment Java Swing based (JRE 1.6), generic rich frontend client. HTML based thin frontend client

More information

Web Development with the Eclipse Platform

Web Development with the Eclipse Platform Web Development with the Eclipse Platform Open Source & Commercial tools for J2EE development Jochen Krause 2004-02-04 Innoopract Agenda Currently available Tools for web development Enhancements in Eclipse

More information

Client-side Web Engineering From HTML to AJAX

Client-side Web Engineering From HTML to AJAX Client-side Web Engineering From HTML to AJAX SWE 642, Spring 2008 Nick Duan 1 What is Client-side Engineering? The concepts, tools and techniques for creating standard web browser and browser extensions

More information

IGW+ Certificate. I d e a l G r o u p i n W e b. International professional web design,

IGW+ Certificate. I d e a l G r o u p i n W e b. International professional web design, IGW+ Certificate I d e a l G r o u p i n W e b International professional web design, Programming, CRM, online office automation, complete security, Secured Ecommerce and web site maintenance educational

More information

ISL Online Integration Manual

ISL Online Integration Manual Contents 2 Table of Contents Foreword Part I Overview Part II 0 3 4... 1 Dow nload and prepare 4... 2 Enable the ex ternal ID column on ISL Conference Prox y 4... 3 Deploy w eb content 5... 4 Add items

More information

Android Development Setup [Revision Date: 02/16/11]

Android Development Setup [Revision Date: 02/16/11] Android Development Setup [Revision Date: 02/16/11] 0. Java : Go to the URL below to access the Java SE Download page: http://www.oracle.com/technetwork/java/javase/downloads/index.html Select Java Platform,

More information

Course Name: Course in JSP Course Code: P5

Course Name: Course in JSP Course Code: P5 Course Name: Course in JSP Course Code: P5 Address: Sh No BSH 1,2,3 Almedia residency, Xetia Waddo Duler Mapusa Goa E-mail Id: [email protected] Tel: (0832) 2465556 (0832) 6454066 Course Code: P5 3i

More information

The "Eclipse Classic" version is recommended. Otherwise, a Java or RCP version of Eclipse is recommended.

The Eclipse Classic version is recommended. Otherwise, a Java or RCP version of Eclipse is recommended. Installing the SDK This page describes how to install the Android SDK and set up your development environment for the first time. If you encounter any problems during installation, see the Troubleshooting

More information