76
An Introduction to Rich Internet Applications Mrinal Wadhwa http://www.mrinalwadhwa.com

An Introduction To Rich Internet Apllications

Embed Size (px)

DESCRIPTION

This presentation tries to define what an RIA is and explores a generic architecture of a typical RIA platform

Citation preview

Page 1: An Introduction To Rich Internet Apllications

An Introduction to Rich Internet Applications

Mrinal Wadhwahttp://www.mrinalwadhwa.com

Page 2: An Introduction To Rich Internet Apllications

What is an RIA ?

Page 3: An Introduction To Rich Internet Apllications

in my opinion, its a ...

Page 4: An Introduction To Rich Internet Apllications

Rich Internet Application

Page 5: An Introduction To Rich Internet Apllications

Rich Internet Application

Page 6: An Introduction To Rich Internet Apllications

Rich Internet Application

takes input and processes it to produce valuable output

Page 7: An Introduction To Rich Internet Apllications

Rich Internet Application

Page 8: An Introduction To Rich Internet Apllications

Rich Internet Application

one or more of the inputs it consumes or outputs it produces live on the network

Page 9: An Introduction To Rich Internet Apllications

Rich Internet Application

Page 10: An Introduction To Rich Internet Apllications

Rich Internet Application

offers a rich experience to its users

Page 11: An Introduction To Rich Internet Apllications

now since most applications we build today, deal with data on the network, a rich user experience is

the key differentiator ...

Page 12: An Introduction To Rich Internet Apllications

Rich Experience ?

Page 13: An Introduction To Rich Internet Apllications

a user’s feelings while using and after he’s done using an application ...

Page 14: An Introduction To Rich Internet Apllications

optimize ...

Page 15: An Introduction To Rich Internet Apllications
Page 16: An Introduction To Rich Internet Apllications

Satisfaction

Page 17: An Introduction To Rich Internet Apllications

SatisfactionContent

Page 18: An Introduction To Rich Internet Apllications

SatisfactionContent

Happiness

Page 19: An Introduction To Rich Internet Apllications

SatisfactionContent

HappinessExcitement

Page 20: An Introduction To Rich Internet Apllications

SatisfactionContent

HappinessExcitement

Fun

Page 21: An Introduction To Rich Internet Apllications

SatisfactionContent

HappinessExcitement

FunWin

Page 22: An Introduction To Rich Internet Apllications

avoid ...

Page 23: An Introduction To Rich Internet Apllications
Page 24: An Introduction To Rich Internet Apllications

Disappointment

Page 25: An Introduction To Rich Internet Apllications

DisappointmentFrustration

Page 26: An Introduction To Rich Internet Apllications

DisappointmentFrustration

Tiredness

Page 27: An Introduction To Rich Internet Apllications

DisappointmentFrustration

TirednessBoredom

Page 28: An Introduction To Rich Internet Apllications

DisappointmentFrustration

TirednessBoredom

Defeat

Page 29: An Introduction To Rich Internet Apllications

DisappointmentFrustration

TirednessBoredom

DefeatAnger

Page 30: An Introduction To Rich Internet Apllications

since users experience an application via an interface ...

Page 31: An Introduction To Rich Internet Apllications

some modern user interface development technologies have been labeled ...

Page 32: An Introduction To Rich Internet Apllications

“RIA Technologies”

Page 33: An Introduction To Rich Internet Apllications
Page 34: An Introduction To Rich Internet Apllications

but, RIAs are not just about the interface, the whole application defines what a user experiences

Page 35: An Introduction To Rich Internet Apllications

google.com is a good example ...

Page 36: An Introduction To Rich Internet Apllications

also, using the so called “RIA technologies” is not required, a rich experience can be delivered in any technology

Page 37: An Introduction To Rich Internet Apllications

using an RIA technology does not guarantee that what you make with it is an RIA ...

Page 38: An Introduction To Rich Internet Apllications

using an RIA technology does not guarantee that what you make with it is an RIA ...

it is very easy to create a frustrating experience for a user even when using these technologies

Page 39: An Introduction To Rich Internet Apllications

what RIA technologies do is provide a good set of tools to build and deliver a rich experience

Page 40: An Introduction To Rich Internet Apllications

A typical RIA platform ...

Page 41: An Introduction To Rich Internet Apllications

Operating System

Page 42: An Introduction To Rich Internet Apllications

Operating System

API

the OS exposes some API

Page 43: An Introduction To Rich Internet Apllications

Operating System

an RIA runtime uses this API to create some functionality

Runtime

Page 44: An Introduction To Rich Internet Apllications

Operating System

typically ...

Runtime

Page 45: An Introduction To Rich Internet Apllications

Operating System

runtimes try to be cross platform ..

Runtime

Page 46: An Introduction To Rich Internet Apllications

Operating System

and have a small download size ...

Runtime

Page 47: An Introduction To Rich Internet Apllications

Operating System

typical functionality provided ...

Runtime

Page 48: An Introduction To Rich Internet Apllications

Operating System

a mechanism to do computations ..

Runtime

Computations

Page 49: An Introduction To Rich Internet Apllications

Operating System

rendering raster and vector graphics...

Runtime

RenderingComputations

Page 50: An Introduction To Rich Internet Apllications

Operating System

a coordinate system and positioning ...

Runtime

PositioningRenderingComputations

Page 51: An Introduction To Rich Internet Apllications

Operating System

keyboard, mouse input ...

Runtime

InputPositioningRenderingComputations

Page 52: An Introduction To Rich Internet Apllications

Operating System

text input and rendering ..

Runtime

TextInputPositioningRenderingComputations

Page 53: An Introduction To Rich Internet Apllications

Operating System

a way for dispatching and listening to events ...

Runtime

EventsTextInputPositioningRenderingComputations

Page 54: An Introduction To Rich Internet Apllications

Operating System

animation ...

Runtime

EventsTextInputPositioningRenderingComputations Animation

Page 55: An Introduction To Rich Internet Apllications

Operating System

networking with protocols like http, tcp, udp ..

Runtime

EventsTextInputPositioningRenderingComputations Animation Networking

Page 56: An Introduction To Rich Internet Apllications

Operating System

audio, video .. input and output

Runtime

EventsTextInputPositioningRenderingComputations Animation Networking

Audio/Video

Page 57: An Introduction To Rich Internet Apllications

Operating System

the functionality provided by the runtime forms the superset of what an application can do

Runtime

EventsTextInputPositioningRenderingComputations Animation Networking

Audio/Video

Page 58: An Introduction To Rich Internet Apllications

Operating System

you can write applications directly using the runtimes API ...

Runtime

EventsTextInputPositioningRenderingComputations Animation Networking

Audio/Video

Page 59: An Introduction To Rich Internet Apllications

Runtime

Operating System

Application Framework

application frameworks make it easier to write applications ...

Page 60: An Introduction To Rich Internet Apllications

Runtime

Operating System

Application Framework

typical functionality provided ...

Page 61: An Introduction To Rich Internet Apllications

Runtime

Operating System

Application Framework

A language to declaratively define UI

Declarative

Page 62: An Introduction To Rich Internet Apllications

Runtime

Operating System

Application Framework

A set of commonly used UI controls ..

Declarative Components

Page 63: An Introduction To Rich Internet Apllications

Runtime

Operating System

Application Framework

A framework to build new controls/components ...

Declarative Component FrameworkComponents

Page 64: An Introduction To Rich Internet Apllications

Runtime

Operating System

Application Framework

make it easy to layout and manage position of objects ...

Declarative Component FrameworkComponents Layouts

Page 65: An Introduction To Rich Internet Apllications

Runtime

Operating System

Application Framework

other higher level network protocols

Declarative Component FrameworkComponents Layouts SOAP/REST

Page 66: An Introduction To Rich Internet Apllications

Runtime

Operating System

Application Framework

data management libraries ..

Declarative Component FrameworkComponents Layouts SOAP/REST Collections

Page 67: An Introduction To Rich Internet Apllications

Runtime

Operating System

Application Framework

data binding ...

Declarative Component FrameworkComponents Layouts SOAP/REST Collections

Data Binding

Page 68: An Introduction To Rich Internet Apllications

Runtime

Operating System

Application Framework

skinning ...

Declarative Component FrameworkComponents Layouts SOAP/REST Collections

Data Binding Skinning

Page 69: An Introduction To Rich Internet Apllications

Runtime

Operating System

Application Framework

styling with CSS ..

Declarative Component FrameworkComponents Layouts SOAP/REST Collections

Data Binding Skinning CSS

Page 70: An Introduction To Rich Internet Apllications

Runtime

Operating System

Application Framework

Your Application

Page 71: An Introduction To Rich Internet Apllications

Flash Platform

Page 72: An Introduction To Rich Internet Apllications

Silverlight

Page 73: An Introduction To Rich Internet Apllications

JavaFx

Page 74: An Introduction To Rich Internet Apllications

HTML5

Page 75: An Introduction To Rich Internet Apllications

Some interesting examples ...

Page 76: An Introduction To Rich Internet Apllications

http://www.mrinalwadhwa.comhttp://twitter.com/mrinal

Mrinal Wadhwa