SlideShare a Scribd company logo
Rich
Web
Clients

Christopher
Bartling

Web
apps
today

•  Development
can
be
tedious

•  Browser
compa;bility
issues

•  Simplis;c
interac;vity

Web
apps
in
the
future

•  Rich
visualiza;ons

•  Highly
interac;ve

•  Data
rich

•  Real‐;me
data
push

•  Desktop
integra;on

Adobe
Flash
and
AIR

•  Distributed
by
Adobe
Systems

•  Introduced
in
1996

•  Vector
and
raster
graphics

•  Bi‐direc;onal
streaming
of
audio
and

   video

Ac;onScript
3.0

•  Scrip;ng
language
based
on

   ECMAScript

•  Bytecode
targets
AVM2
in
Flash

   Player
9
and
10

•  Performance
improvements

  – JIT
compiler

•  Modern
language
constructs

Flash
Player
10

•  Introduced
September
2008

•  Custom
filters
and
effects

  – Adobe
Pixel
Bender
technology

•  3D
transforma;ons
and
anima;on

•  Rich
text
layout

•  GPU
hardware
accelera;on

Adobe
Flex
3

•  Free,
open
source
SDK

•  MXML
for
layout
and
component
setup

•  Ac;onScript
3.0
for
event
handling
and

   programma;c
logic

•  IDEs:


  – Flex
Builder
3.0


  – IntelliJ
IDEA
8

Flex/AJAX
Bridge

•  Library
file
included
in
Flex
app

•  Allows
Ac;onScript
classes
to
be

   scripted
by
JavaScript

•  Hybrid
Flash/AJAX
applica;ons

BlazeDS

•  Remo;ng

•  Messaging

•  Java
server‐based
technology

•  Open
source:
LGPL
v3
license

•  Ac;on
Message
Format
(AMF)

Open
Screen
Project

•  Collabora;on
of
20
companies

•  Consistent
run;me
environment
based

   on
Adobe
Flash

•  Driving
rich
Internet
experiences
across

   devices
and
plaborms

•  Adobe
will
open
access
to
Adobe
Flash

   technology

Microsoc
Silverlight
2

•  CoreCLR

  – .NET
Framework
implementa;on

•  Cross‐browser,
cross‐plaborm

•  WPF
and
XAML

•  Variety
of
languages

  – C#,
VB.NET,
IronPython

•  LINQ

Silverlight
tooling

•  Visual
Studio
2008
and
beyond

  – Developer
tool

•  Microsoc
Expression
Blend

  – Designer
tool

CoreCLR

•  Small
common
language
run;me

•  Works
seamlessly
with
desktop
CLR
on

   Windows
plaborms

•  Cross‐plaborm

  –  PAL
on
Mac
OS
X
CoreCLR

  –  Moonlight
and
Mono
on
Linux

•  Lessons
learned
from
SSCLI
(aka
Rotor)

HTML
Bridge

•  Allow
Silverlight
app
to
access

   browser’s
DOM

•  Expose
managed
types
and
methods

   to
JavaScript

•  JavaScript
methods
ahached
to

   scriptable
managed
events

Java
SE
6
Update
10

•  Consumer
JRE

•  Java
Kernel

•  New
Java
Plug‐in

•  Java
Deployment
Kit

•  Nimbus
Look
and
Feel

LiveConnect

•  Java
to
JavaScript
communica;ons

   and
vice‐versa.

•  Re‐implemented
in
Java
SE
6
Update

   10.

•  Consistency
across
browsers.

Java
FX

•  Sun’s
RIA
strategy
for
the
Java

   plaborm

•  Project
Nile

•  JavaFX
Script

•  Scene
Graph
API

Barriers

•  Loss
of
web
metaphors


     –  Bookmarking,
addressable
URLs

     Penetra;on
of
plugins/run;mes

• 
     Search
engine
visibility

• 
     Sandboxing

• 
     Addi;onal
development
complexity


• 
     Tes;ng
complexity

• 
     RIA
plaborm
lock‐in

• 
RIA
Examples

•  Flash

   –  Google
Finance,
Picnik,
Spa;alKey,
NoteFlight,

      Aviary
Phoenix

•  Silverlight
2

   –  NBC
Olympics,
Top
Banana,
MLB.com

•  Java
FX

   –  Sun’s
examples


Where
are
we
headed?

     IE
8
/Firefox
3.1/Google
Chrome

• 
     Flash
Player
10/Adobe
AIR

• 
     Silverlight
2

• 
     Java
6
Update
10
and
Java
FX

• 
Ques;ons

•  Are
you
sa;sfied
with
your
current

   AJAX
applica;on?
Why
or
why
not?

•  Are
RIA
technologies
on
your

   roadmap?

Why
or
why
not?

•  Which
RIA
technology
interests
you?

   Are
you
currently
inves;ga;ng
one

   or
more
of
the
technologies?

Ques;ons

•  What
barriers
do
you
see
for

   adop;on
of
RIA
technologies
for
your

   company
or
client?

•  If
you
already
use
RIA
technologies,

   what
issues
have
you
encountered

   with
them?

Contact
Informa;on

•  Email:
chris.bartling@gmail.com

•  LinkedIn:
hhp://www.linkedin.com/in/chrisbartling



More Related Content

Rich Web Clients 20081118