Laiteriippumaton UI Javalla ja Ajaxilla - Public · 2007. 11. 29. · Google Web Toolkit (GWT)...

Post on 12-Sep-2020

4 views 0 download

Transcript of Laiteriippumaton UI Javalla ja Ajaxilla - Public · 2007. 11. 29. · Google Web Toolkit (GWT)...

Interfacing IT

Laiteriippumaton UIAjaxilla ja Javalla

IT MillJoonas Lehtinen, PhDCEO

Interfacing IT

IT Mill

• Leading expert on RIA (Rich Internet

Applications)

• Provides tools, services and support

for software development for Web,

Java and XML technologies

• Finnish, privately owned, venture backed

company found in year 2000

Interfacing IT

Laiteriippumaton UI?

Interfacing IT

Stakeholders

Interfacing IT

Better than a Desktop Application?

Interfacing IT

How to Put It Together?

Interfacing IT

Cost? Time To Market? ROI?

Interfacing IT

Laiteriippumaton?

Interfacing IT

Pienin ja ainoa yhteinen nimittäjä

Web BrowserJava

Win32

.NET

FlashLinux

Interfacing IT

Web Browser

Interfacing IT

Ajax

• Stands for AsynchronousJavaScript and XML

• Really a marketing term• “Abuse” of old

technologies:– HTTP– XMLHTTPRequest– DOM ja HTML– XSS (Cross-site

scripting)

• Moves the presentationlogic to browser

• Requires no installations• Supported by IE6, IE7,

Firefox, Opera, Safari, ..

Interfacing IT

Täydellinen ratkaisu?

Interfacing IT

Selaimet

• Internet Explorer 6 / 7

• Webkit / KHTML / Safari / S60R3

• Firefox / XULRunner / Mozilla

• Opera

Interfacing IT

Päätelaitteiden eroja (1/2)

• Erittäin vaihteleva CSS-tuki

• Eri bugit kaikilla selaimen eri tasoilla

– Presentaatiokerroksen bugit

– Käyttöjärjestelmän erilaiset widgetit

– Erilaisia muistivuotoja vm:ssä

– Kommunikaatiokerroksen erot

• Erilaisia ominaisuuksia eri selaimilla

– SVG, VML, Canvas

– Eri pluginit: Flash, Silverlight, Java

– Kuvien filtteröinnit

Interfacing IT

Interfacing IT

http://www.webstandards.org/action/acid2/

Interfacing IT

MSDN

Interfacing IT

Päätelaitteiden eroja (2/2)

• Erittäin vaihteleva suoritusnopeus– Toteutuksien erovaisuudet– Prosessorien nopeuserot

• Ruudun koko vaihtelee• Syöttölaitteet vaihtelevat

– Näppäimistö, hiiri, kosketusnäyttö– Tulevaisuudessa ehkä mikrofoni, GPS, kamera, ..

• Muistin määrä vaihtelee merkittävästi• Verkon nopeus ja latenssit erilaisia

Interfacing IT

http://nontroppo.org/timer/kestrel_tests/

Interfacing IT

http://nontroppo.org/timer/kestrel_tests/

Interfacing IT

http://nontroppo.org/timer/kestrel_tests/

Interfacing IT

http://nontroppo.org/timer/kestrel_tests/

Interfacing IT

Time Breakdown of Modern Web Design

Interfacing IT

Työkalut

Interfacing IT

Classification of RIA Frameworks

Programmed in

Java

JavaScript

XML

IT Mill Toolkit 5Google WebToolkit

Backbase

Dojo

Executedin web browser

Executedin server

ICE Faces

Tibco

.NET

IT Mill Toolkit 4

Requiresplug-in

Adobe Flex

Java Applet

Silverlight

JavaFX

Interfacing IT

IT Mill Toolkit User Interface Library

Interfacing IT

Building Blocks for Your RIA

Interfacing IT

Write Once, Use on Any Browser

Interfacing IT

Java - The Only Language You Need

Interfacing IT

Keeping the Logic in Server Keeps It Secure

Interfacing IT

Powerful Development Tools

Interfacing IT

Example: SimpleDevelopment Model

• Application is created by extendingcom.itmill.toolkit.Application

• init() gets called on application start– Initializes the user interface– Registers event handlers

• Events arrive to buttonClick(event)– Calculations are done in the

handler to keep the examplesimple

– Event handler updates calculatordisplay with a simple method call

• No XML, HTML or JavaScript,just Java

buttonClick(event)

init()

event

create the user interface

update the “Result”

Interfacing IT

Interfacing IT

Interfacing IT

IT Mill Toolkit 5

• AJAX enabled UI widgets built on to ofGoogle Web Toolkit (GWT) technology

• New components can be added completely inJava (with help of GWT)

• Supports both server-side as well as client-side programming models

• Open Source with Apache 2 license• Commercial support available

• Toolkit 4 available today• Beta of Toolkit 5 with GWT integration will be

available in December 2007

Interfacing IT

Interfacing IT

Testing Tools

1. Record a test case– Use application like normal user

would– Add assertions to verify correct

application behaviour / results

2. Save test case to testing server– Combine test cases to complete test

suites– Edit test if modifications are needed

3. Run test case on any browser– Run tests regularly to ensure quality– Run several tests in parallel to

ensure application scalability– Run the tests in all target browsers

and operating systems

Interfacing IT

Kysymyksiä?Ville Ingman

Technical Sales Manager

+358-40-5949313ville.ingman@itmill.com

Joonas LehtinenCEO

+358-40-5035001joonas.lehtinen@itmill.com

www.itmill.com

?