Netapp Michael Galpin
-
Upload
rajivmordani -
Category
Technology
-
view
1.205 -
download
0
Transcript of Netapp Michael Galpin
Networked ApplicationsAn Emerging Pattern in RIA Development
Who am I?
Michael Galpin
http://fupeg.blogspot.com
eBay -- Application Architecture
Writer -- developerWorks, TSS, JDJ
Traditional Web Applications
Traditional Web Applications
Browser
Traditional Web Applications
Browser
Request
Traditional Web Applications
BrowserServer
Request
Traditional Web Applications
BrowserServer
HTML
Request
Traditional Web Applications
BrowserServer
HTML
Request
Networked Applications
Networked Applications
Browser
Networked Applications
Browser
Request
Networked Applications
Browser
Request Web Server
Networked Applications
Browser
Request Web Server
App
Networked Applications
Browser
Request Web Server
App
Networked Applications
Browser
Request Web Server
App
Networked Applications
Browser
Request Web Server
App
Request
Networked Applications
Browser App Server
Request Web Server
App
Request
Data
Why?
Architecture
Architectureclient server
pres app1998
“Hello World”
Architectureclient server
pres app1998
client serverpres app
2003
“Hello World”
Ajax
Architectureclient server
pres app1998
client serverpres app
2003
client serverpres app
2008?
“Hello World”
Ajax
RIA
Performance(seriously)
$$$$$$$$$$$$$$
$$$$$$$$$$$$$$
Less (Server)ProcessingLess ServersMore Money
$$$$$$$$$$$$$$
Less (Server)ProcessingLess ServersMore Money
More (Client) ProcessingMore Cores
Free! (Thanks Users)
$$$$$$$$$$$$$$
Less (Server)ProcessingLess ServersMore Money
More (Client) ProcessingMore Cores
Free! (Thanks Users)
Less Bandwidth More Money
Mobility
Mobility
a.com
a.app
Mobility
a.com
a.app
b.com
a.app
Mobility
a.com
a.app
b.com
a.app
facebook.com
a.app
Mobility
a.com
a.app
b.com
a.app
facebook.com
a.app
a.air
a.app
But What About Ajax?
Ajax?
Ajax?
Browser
Ajax?
Browser
Request
Ajax?
Browser App Server
Request
Ajax?
Browser App Server
Request
Ajax?
Browser App Server
Request
HTML+JS
Ajax?
Browser App Server
Request
HTML+JS
Ajax?
Browser App Server
Request
HTML+JS
XHR
Ajax?
Browser App Server
Request
HTML+JS
XHR
???
Ajax?
Browser App Server
Request
HTML+JS
XHR
HTML?
Ajax?
Browser App Server
Request
HTML+JS
XHR
Data?
Ajax?
Browser App Server
Request
HTML+JS
XHR
Data?
How?
JS Widget Kits
JS Widget Kits
JS Widget Kits
Good
Good
Functional Programming!
Good
Functional Programming!
Frameworks!
Good
Functional Programming!
Frameworks!
Choices!
Bad
Bad
Browsers
Bad
Browsers
DOM APIs
Bad
Browsers
DOM APIs
Mix-n-Match?
Ugly
Ugly
JavaScript is Sloooooow
Ugly
JavaScript is Sloooooow
Cross Domains
Ugly
JavaScript is Sloooooow
Ref Count
Cross Domains
Google Web Toolkit
Google Web Toolkit
Google Web Toolkit
Good
GoodOOP
GoodOOP
Static Typing
GoodOOP
Killer JavaScriptStatic Typing
GoodOOP
Killer JavaScriptStatic Typing
TOOLS
Bad
BadOOP
BadOOP
Static Typing
BadOOP
Killer JavaScript
Static Typing
JavaScript
Flex
Good
Good
MXML
Good
ActionScript
MXML
Good
ActionScript
MXML
Flash Player
Good
ActionScript
MXML
Flash Player
Tools
More Good
More Good
Browser Independence
More Good
Browser Independence
Evolves
More Good
Browser Independence
Evolves
Handsome
More Good
Browser Independence
Evolves
Handsome
Plays Well With Others
Even More Good
Even More Good
Speed
Even More Good
Speed
Mark-Sweep
Even More Good
Speed
Mark-Sweep
crossdomain.xml
Not Good
Not Good$$$
Not Good$$$
Developers, Developers, Developers
Not Good
500 KB
$$$
Developers, Developers, Developers
But What About...
But What About...
But What About...