27
Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

Embed Size (px)

Citation preview

Page 1: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

Rich Internet ApplicationsAn alternative in web application development with Java

- Vikas Bhatia

Page 2: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

A few points before we start

RIAs are early-adopter stuff This way of thinking is still new

and not generally accepted Its not perfect, are DTML based

apps perfect? You decide. Hold on to your preconceived

preferences Give RIA a chance

Page 3: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

Part 1

Why do we need RIAs?

Page 4: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

RIA – A need The limitations of the platform frustrate

users Mainly the user experience – currently, its

about a serialized, step-by-step experience Not sure its about user experience?

If its free, would you pick a no-name brand over an Apple iPod

Users will pay more for a better experience and isn't making money the bottom line

Is the end-user experience important for your application? Depends…. Are you running a scheduling system seen only by

sysadmins, once a day – maybe not so much Are you running a book store, a shopping cart, a

stock picking application, a supply chain application, an executive Dashboard – maybe so

Page 5: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

More on RIAs Remember, its not about what the

developer wants, its always about the customer

Anyone been to home depot? Remember the Behr color chooser, it is built with OpenLaszlo

98% of all computers are supposed to have flash, even on mobile phones and ps2

source Macromedia website

RIAs can be everywhere your html app can be and more

So the question is how do we provide a better experience?

Page 6: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

What are the options (All client side) Ajax – Asynchronous JavaScript and XML Java Web Start Canoo ULC – webstart, applets Nexaweb – xul (loosely) and applets Thinlet - applet XTT – XML Tunneling Technology – webstart?? Echo Framework Droplets – C++ client install?? OpenLaszlo – flash, xml Flex – flash, xml, action script XForms – next generation of HTML forms Isomorphic – DHTML, XML, tag-based, JavaScript XUL from Mozilla – XML tag-based Probably many more that I do not know about

Page 7: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

Classification Java on the front

end JNLP Nexaweb (applet) Thinlet (applet) Canoo ULC (webstart

+ applet)

Non-java on the front end Ajax Flex OpenLaszlo Droplets? Echo Framework XForms – to

create forms Isomorphic –

DHTML, xml, tag-based

XUL Mozilla

Page 8: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

Ajax Something that I

have wanted to look up for a long time

Example: Gmail, Google Maps, Google Suggest, Backbase, Ta-Da Lists, new examples everyday

Very intriguing Supposed to be for

experienced web programmers

Source:http://www.adaptivepath.com/publications/essays/archives/000385.php

Page 9: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

Why to use RIA

Page 10: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

What! Another new technology?

This is bound to happen Have you looked at java lately,

hibernate, webservices, countless xml specifications, EJB, etc..

Does it ever stop?

Page 11: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

Costs Learning curve involved You have to change the way you have been

brought up to think about web applications You can go hybrid

HTML + RIA possible Development costs, licensing costs, training

costs, SQA costs Acceptance by the customer

If you believe it, you can sell it The customer (end user) will look for a better user

experience (besides the actual functionality) The customer (sys admin) will look for

performance, which is comparable in my view to HTML apps, if not better

Page 12: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

Part 2

Open OpenLaszlo

Page 13: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

What is OpenLaszlo The OpenLaszlo platform allows developers

to create rich user interface capabilities of desktop client software and the instantaneous no-download web deployment of HTML source OpenLaszlo Wiki

Open Source (Java, JavaScript, XML, action script)

OpenLaszlo isn’t Flash – just uses Flash 6.0+ as runtime; could change

Clients: Earthlink, Yahoo, Behr Paint, La Quinta, many more…

Demo time Contacts, Amazon, Dashboard, Calendar,

LaszloLucene Photoblox, WeatherBlox, Laszlo systems front

page

Page 14: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

Do I have to learn a new language with OpenLaszlo? Language – no, its XML and

JavaScript Syntax - yes

Page 15: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

Why Flash over Java applets

Unfortunately, applets still have a stigma associated with them

Even after all these years, still clunky Little industry momentum towards

Java applets My opinion: Java rocks on the server

side, not so much on the client side The runtime environment for lzx could

be changed later on to applets, C++, C#, SVG (see the OpenLaszlo wiki)

Page 16: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

OpenLaszlo Architecture

Source: OpenLaszlo

Page 17: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

OpenLaszlo Data Flow

Source: Laszlo Systems

Page 18: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

OpenLaszlo Development Cycle

Source: OpenLaszlo

Page 19: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

OpenLaszlo - Features OpenLaszlo in 10

minutes Proxied and SOLO

Deployment Data Management

XPath support Objects and Classes Event Management

Delegates State management

Animations Components

Custom components

Scripting support Font support Mouse and

keyboard click management

Drag and drop Browser integration KRANK Feature Persistent

Connections Cache Management Import vs. Include

Page 20: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

OpenLaszlo Data Binding Data in LZX

Embed data directly in the application Directly XML file

Sending/receiving data at runtime to a remote data source

Sending/receiving data at runtime to a remote web service

OpenLaszlo RPC Java RPC SOAP XML RPC

Page 21: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

OpenLaszlo Caching Bandwidth used with OpenLaszlo is normally

less than that used for HTML based applications since only data is passed back and forth once the application has been downloaded on the client

Client side caching Server side caching Gzip compression

Page 22: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

IBM IDE for OpenLaszlo

Page 23: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

Limitations of OpenLaszlo

No graphs/charts yet Coming very soon

Lack of i18n Unicode support in 3.0 Work in progress

Performance needs work, on a daily basis (not detrimental) Takes time to get used to the rules

Page 24: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

Learn more http://www.openlaszlo.org/wiki/Main_P

age (wiki, mailing lists)

http://www.laszlosystems.com/ (Laszlo Systems)

http://www.laszlosystems.com/developers/community/forums/ (Forums)

http://alphaworks.ibm.com/tech/ide4laszlo (IBM IDE4Laszlo)

Free Webinar Going SOLO Thursday, June 2, 2005 2:00 p.m. EDT / 11:00

a.m. PDT Duration: 30 minutes

Cost: Free

Page 25: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

Conclusion – Part 1

Rich Internet Applications Here to stay User experience is important, there

is no denying it Will not supplant HTML based apps Needs work and acceptance by

developers Production ready

Page 26: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

Conclusion – Part 2 OpenLaszlo

Enthusiastic developer community Has lots of potential Performance can certainly be

improved by the developer, but it takes work the first time, not so much the next time

Has good community support It IS open source It does what it says Production ready

Page 27: Rich Internet Applications An alternative in web application development with Java - Vikas Bhatia

Thanks, I appreciate your time!!

[email protected]