Title: Developing Rich Internet Applications
1Developing Rich Internet Applications
Richard Monson-Haefel
2Developing Rich Internet Applications
- Agenda
- What are Rich Internet Applications
- What RIA options are available
- Comparing RIA Solutions
3Developing Rich Internet Applications
- Agenda
- What are Rich Internet Applications
- What RIA options are available
- Comparing RIA Solutions
4What are Rich Internet Applications
- Defining RIA
- Any web browser technology that provides more
sophisticated user-interface capabilities than
HTML and CSS alone - A web browser technology that communicates with
backend services
5What are Rich Internet Applications
Server Application
Web Browser
Internet
Get Data
Build Interface
6What are Rich Internet Applications
Server Application
Web Browser
Internet
Get Data
7What are Rich Internet Applications
Server Application
Web Browser
- Java EE
- Microsoft .NET
- LAMP
- Other
- Microsoft IE
- Mozilla FireFox
- Apple Safari
- Other
request
Internet
response
Rich Internet Application
- Ajax (Dojo, GWT, Prototype, etc.)
- Adobe Flex
- Curl
- Microsoft Silverlight
8What are Rich Internet Applications
- RIA
- Good portability
- Good reach
- Single-source medium-weight distribution
- Centralized Managment
- Stateless/stateful paradigm
- Distributed Processing
- Sophisticated UI
- Becoming Mainstream
- HTML/HTTP
- Excellent portability
- Unprecedented Reach
- Single-source light-weight distribution dbdfgdfg
- Centralized management
- Stateless paradigm
- Most processing done on server
- Retro Green Screen user experience
- Broad Adoption
- Client/Server
- Tight coupling
- Limited Reach
- Multi-channel heavy-weight distribution
- Fragmented management
- Stateful paradigm
- Distributed Processing
- Very Sophisticated UI
- Limited Adoption
9Developing Rich Internet Applications
- Agenda
- What are Rich Internet Applications
- What RIA options are available
- Comparing RIA Solutions
10What RIA options are available
- Adobe Flash
- Ajax
- Curl
- Java applets
- Microsoft Silverlight
- Mozilla XUL
11What RIA options are available
- Flex
- Second most popular RIA solution
- Based on Flash player nearly ubiquitous
- 99 of all web browsers support flash 6 and above
- gt 94 now support Flash 9.0
- Principle value proposition
- Extremely rich multi-media capabilities
- Excellent Tooling (especially Flex)
- The Box problem
12What RIA options are available
Adobe Flex
13What RIA options are available
Adobe Flex
14What RIA options are available
Adobe Flex
15What RIA options are available
- Ajax
- Currently the most popular RIA solution
- Built on Web Browser Standards
- ECMAScript/JavaScript
- DOM
- CSS
- XMLHttpRequest API
- Principle value proposition
- Seamless integration with HTML
- Over 240 Ajax toolkits to choose from
- Prototype 51.7
- Script.aculo.us 38.6
- Dojo 18.4
- Tooling needs improvement
- Reach is not as extensive as Flash or Java
- Browser incompatibilities remains a problem.
16What RIA options are available
Ajax
2
A DIALOG BOX POPS UP SHOWING MARKET DATA ON THE
STOCK
17What RIA options are available
Ajax
18What RIA options are available
Ajax
19What RIA options are available
- Curl
- Created at MIT in 1995
- A markup, object-oriented, dynamic language
- Excellent Curl IDE
- Off-line/on-line Curl RTE
- Principle value proposition
- Fastest RIA solution available today
- Handles 100,000 records
- The Box problem
20What RIA options are available
- Java-applet based
- Third most popular RIA solution
- Based on Java plug-in
- gt 93 of all web browsers support Java
- Principle value proposition
- Huge ecosystem and developer community (4
million) - Extensive penetration into mobile devices
- Three competitors
- Nexaweb
- Sun Microsystems JavaFX Script
- Excellent Tooling
- The Box problem
21What RIA options are available
Java
22What RIA options are available
Java
23What RIA options are available
- Microsoft Silverlight
- Just released version 1.0
- Based on a Microsoft plug-in
- Supported on the following browsers
- Safari
- Mozilla
- FireFox
- IE
- Principle value proposition
- Large Microsoft developer community
- Rich multi-media capabilities promised
- Microsoft is the only Vendor
- Excellent Tooling
- Excellent integration with Windows operating
system and WPF - The Box problem
24What RIA options are available
- Microsoft Silverlight Example
Microsoft Silverlight
25What RIA options are available
- W3C/Mozilla
- W3C Non-Pervasive standards
- XForms Forms-centric RIA format is XML
- SVG 2D Vector Graphics format is XML
- W3C Pervasive Standards
- CSS Style of presentation format is XML
- XHTML HTML normalized to XML
- XMLHttpRequestObject (currently in development)
- Mozilla open source project
- Frequently implements W3C standards
- Defines its own XUL RIA technology which is not
portable to other browsers
26What RIA options are available
Mozilla XUL
27Developing Rich Internet Applications
- Agenda
- What are Rich Internet Applications
- What RIA options are available
- Comparing RIA Solutions
28Comparing RIA Solutions
- Each project will determine requirements, some of
which may universal other of which are project
specific. - Identify Capabilities
- Reach
- Off-line Capabilities
- High-Level Tooling
- Performance
- HTML Integration
- Web Accessibility
- Etc.
29Comparing RIA Solutions
RIA Platform
30Comparing RIA Solutions
Adobe Flex
31Comparing RIA Solutions
Adobe Flex
32Comparing RIA Solutions
Ajax
33Comparing RIA Solutions
Curl
34Comparing RIA Solutions
Microsoft Silverlight
35Comparing RIA Solutions
Retail Store
36Comparing RIA Solutions
Tax Filing
37Comparing RIA Solutions
Product Configuration
38Comparing RIA Solutions
Trading Application
39Comparing RIA Solutions
Adobe Flex
Ajax
Microsoft Silverlight
Curl
40Comparing RIA Solutions
Adobe Flex
Ajax
Retail Store
Microsoft Silverlight
Curl
41Comparing RIA Solutions
Adobe Flex
Ajax
Tax Filing
Microsoft Silverlight
Curl
42Comparing RIA Solutions
Adobe Flex
Product Configuration
Ajax
Microsoft Silverlight
Curl
43Comparing RIA Solutions
Adobe Flex
Ajax
Trading Application
Microsoft Silverlight
Curl