Laiteriippumaton UI Ajaxilla ja Javalla IT Mill Joonas Lehtinen, PhD CEO
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
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
Interfacing IT Laiteriippumaton?
Pienin ja ainoa yhteinen nimittäjä Linux Flash Web Browser Java Win32.NET
Web Browser Interfacing IT
Ajax Stands for Asynchronous JavaScript and XML Really a marketing term Abuse of old technologies: HTTP XMLHTTPRequest DOM ja HTML XSS (Cross-site scripting) Moves the presentation logic to browser Requires no installations Supported by IE6, IE7, Firefox, Opera, Safari,..
Täydellinen ratkaisu? Interfacing IT
Selaimet Internet Explorer 6 / 7 Webkit / KHTML / Safari / S60R3 Firefox / XULRunner / Mozilla Opera
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
http://www.webstandards.org/action/acid2/
MSDN
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
http://nontroppo.org/timer/kestrel_tests/
http://nontroppo.org/timer/kestrel_tests/
http://nontroppo.org/timer/kestrel_tests/
http://nontroppo.org/timer/kestrel_tests/
Time Breakdown of Modern Web Design Interfacing IT
Työkalut Interfacing IT
Classification of RIA Frameworks Programmed in Executed in web browser Executed in server Java Java Applet Google Web Toolkit IT Mill Toolkit 5 IT Mill Toolkit 4 JavaScript JavaFX Requires plug-in Dojo Tibco XML Adobe Flex Backbase ICE Faces Silverlight.NET
IT Mill Toolkit User Interface Library
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
Powerful Development Tools Interfacing IT
Example: Simple Development Model Application is created by extending com.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 example simple Event handler updates calculator display with a simple method call No XML, HTML or JavaScript, just Java init() create the user interface event buttonclick(event) update the Result
IT Mill Toolkit 5 AJAX enabled UI widgets built on to of Google Web Toolkit (GWT) technology New components can be added completely in Java (with help of GWT) Supports both server-side as well as clientside 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
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
Kysymyksiä? Ville Ingman Technical Sales Manager +358-40-5949313 ville.ingman@itmill.com? Joonas Lehtinen CEO +358-40-5035001 joonas.lehtinen@itmill.com www.itmill.com