RIA Contact Josh Holmes James Ward Microsoft Evangelist Adobe - - PowerPoint PPT Presentation

ria contact
SMART_READER_LITE
LIVE PREVIEW

RIA Contact Josh Holmes James Ward Microsoft Evangelist Adobe - - PowerPoint PPT Presentation

Architecting RIA Contact Josh Holmes James Ward Microsoft Evangelist Adobe Evangelist josh.holmes@microsoft.com jaward@adobe.com joshholmes.com jamesward.com What is by Kushal Das Is it Rural Inoculation Association? Rare Isotope


slide-1
SLIDE 1

Architecting

RIA

slide-2
SLIDE 2

Contact

Josh Holmes Microsoft Evangelist josh.holmes@microsoft.com joshholmes.com James Ward Adobe Evangelist jaward@adobe.com jamesward.com

slide-3
SLIDE 3

What is

by Kushal Das

slide-4
SLIDE 4

Is it…

Rural Inoculation Association? Rare Isotope Accelerator? Royal Institute of Acting Rampantly Inept Alien? Royally Idiotic Annoyance?

Really Inane Acronym?

Rich Internet Application?

slide-5
SLIDE 5

Ubiquity Richness Next Generation

slide-6
SLIDE 6

Back Button and Refresh Visual Vocabulary State management Browser Sandbox Business Logic in UI Component Level Logic Animation

new for Desktop Developers new for Web Developer

What’s different with RIA?

Limited Runtime Service Orientation Non-text based layout Hype

slide-7
SLIDE 7
slide-8
SLIDE 8
slide-9
SLIDE 9
slide-10
SLIDE 10
slide-11
SLIDE 11

Taliesin West: Drafting Studio

slide-12
SLIDE 12
slide-13
SLIDE 13
slide-14
SLIDE 14

MVP Pattern

View is more loosely

coupled to the model

Easier to unit test Usually view to

presenter map one to

  • ne

Complex views may

have multi presenters

MVC Pattern

Controller are based

  • n behaviors and can

be shared across views

Can be responsible for

determining which view to display (Front Controller Pattern)

slide-15
SLIDE 15
slide-16
SLIDE 16
slide-17
SLIDE 17
slide-18
SLIDE 18
slide-19
SLIDE 19
slide-20
SLIDE 20
slide-21
SLIDE 21
slide-22
SLIDE 22
slide-23
SLIDE 23
slide-24
SLIDE 24

..but don’t forget the power users

70 20 10

slide-25
SLIDE 25
slide-26
SLIDE 26
slide-27
SLIDE 27
slide-28
SLIDE 28
slide-29
SLIDE 29
slide-30
SLIDE 30
slide-31
SLIDE 31

with usability with usability

slide-32
SLIDE 32
  • Cookies are on a domain level
  • bar.com cannot access foo.com cookies…
  • Same domain - http://foo.com is different than

http://bar.foo.com or http://www.foo.com

  • Same protocol - http://foo.com is different than

https://foo.com

  • Same port - http://foo.com is

different than http://foo.com:8080

  • foo.com should feel secure

storing user data in cookies

  • Prevent cross-site forgery
  • Exploits a sites trust for a user
slide-33
SLIDE 33
  • “Private” services (for your own app)
  • DO use browser-based authentication
  • Cookies, HTTP Auth, etc.
  • DO NOT enable public access via cross-domain policy

file

  • “Public” services (for 3rd-party apps)
  • DO NOT use browser-based authentication
  • DO publish cross-domain policy files
  • DO use “cross-domain-safe” authentication
  • E.g. URL signatures
  • DO separate public services in their own domain
  • E.g. api.flickr.com vs. www.flickr.com
slide-34
SLIDE 34
slide-35
SLIDE 35
slide-36
SLIDE 36
slide-37
SLIDE 37
slide-38
SLIDE 38
slide-39
SLIDE 39
slide-40
SLIDE 40
slide-41
SLIDE 41

by Caution Mike

slide-42
SLIDE 42
slide-43
SLIDE 43
slide-44
SLIDE 44
slide-45
SLIDE 45
slide-46
SLIDE 46
slide-47
SLIDE 47

by billaday

slide-48
SLIDE 48
slide-49
SLIDE 49
slide-50
SLIDE 50
slide-51
SLIDE 51
slide-52
SLIDE 52
slide-53
SLIDE 53

by joeltelling

slide-54
SLIDE 54
slide-55
SLIDE 55
slide-56
SLIDE 56
slide-57
SLIDE 57

by mikeyexists

slide-58
SLIDE 58
slide-59
SLIDE 59
slide-60
SLIDE 60
slide-61
SLIDE 61
slide-62
SLIDE 62

Rich Internet Applications are meant to enhance user experience Architecture of the client matters Use good development practices Leverage the framework Build for the user Don’t get religious

Take-aways

slide-63
SLIDE 63

http://www.joshholmes.com http://www.jamesward.com

Take the Next Step

slide-64
SLIDE 64

Architecting

RIA

slide-65
SLIDE 65

Contact

Josh Holmes Microsoft Evangelist josh.holmes@microsoft.com joshholmes.com James Ward Adobe Evangelist jaward@adobe.com jamesward.com