Architecting Rich Internet Applications May 24, 2005 Daniel Gąsienica May 24, 2005 Daniel...

Post on 28-Mar-2015

216 views 3 download

Transcript of Architecting Rich Internet Applications May 24, 2005 Daniel Gąsienica May 24, 2005 Daniel...

ArchitectingRich Internet Applications

ArchitectingRich Internet ApplicationsMay 24, 2005

Daniel GąsienicaMay 24, 2005Daniel Gąsienica

MaturitätsarbeitMaturitätsarbeit

Architecting Rich Internet Applications Daniel Gąsienica

What I will talk about• Why did I choose this topic?• What is an RIA? Examples…• Introducing Phyre: Physics Rämibühl Experiments• Quick Tour of Phyre• Discussion: Advantages/Drawbacks of Phyre

• Theory: Three–Tiered Application Architectures• Insight: Implementing the Catalog’s Categories

• Questions?

Architecting Rich Internet Applications Daniel Gąsienica

Why did I choose this topic?Background:• 6 years experience in web development• 2000: First steps with Macromedia Flash• Fascinated by modern web technologies…

Challenge: Applying my skills to build a real world web application …

• … using mostly free technologies• … applying modern day development concepts

Rich Internet Applications (RIA)

Architecting Rich Internet Applications Daniel Gąsienica

What is a Rich Internet Application?

Compared to a Desktop Application, an RIA … … does not require to be installed.… can be updated/deployed instantly.… can be accessed from any computer with an internet connection.

Architecting Rich Internet Applications Daniel Gąsienica

Three Examples of RIA

GMail

Google Maps MINI Car Configurator

Architecting Rich Internet Applications Daniel Gąsienica

Phyre: Physics Rämibühl Experiments

Phyre is an RIA that manages the catalog ofexperiments at the MNG Rämibühl.

It manages:• Experiments• Parts• Images/Illustrations• Users

Architecting Rich Internet Applications Daniel Gąsienica

Quick Tour of Phyre

Architecting Rich Internet Applications Daniel Gąsienica

Three–Tiered Application Architectures

What you see as a user

Link

Storage of Information

Architecting Rich Internet Applications Daniel Gąsienica

Insight:Implementing the Catalog’s Categories

Architecting Rich Internet Applications Daniel Gąsienica

Phyre‘s Database

We‘ll look only at this one…We‘ll look only at this one…

Architecting Rich Internet Applications Daniel Gąsienica

Storing Hierarchical Data

Mechanik

Würfe Arbeit

Mechanikid: 1

parent_id: NULL

Arbeitid: 3parent_id: 1

Würfeid: 2parent_id: 1

Database:

Reality:

Architecting Rich Internet Applications Daniel Gąsienica

Creating a Hierarchical Treefunction buildTree() {

FIND ALL CATEGORIES IN THE DATABASE;while( THERE ARE CATEGORIES ) {

CREATE CATEGORY ITEM;if (CATEGORY HAS SUBCATEGORIES) {

buildTree();}

}}

<categories><item label="Mechanik" id="1">

<item label="Würfe" id="2" />

<item label="Würfe" id="3" />

</item></categories>

Mechanik

Würfe Arbeit

Recursion

Architecting Rich Internet Applications Daniel Gąsienica

What Happens Behind the Scenes?

Presentation Tier

Business Tier

Database

Request:Request:get categoriesget categories

find categoriesfind categories

Desktop Computer PocketPC Cell Phone

buildbuildcategoriescategories

treetree

Return:Return:categoriescategories

Architecting Rich Internet Applications Daniel Gąsienica

Thank you.

Architecting Rich Internet Applications Daniel Gąsienica

Questions?

ArchitectingRich Internet Applications

ArchitectingRich Internet ApplicationsMay 24, 2005

Daniel GąsienicaMay 24, 2005Daniel Gąsienica