220 likes | 336 Views
Marcelo Lopez Ruiz Senior Software Design Engineer Microsoft Corporation. HTML5 and the future JavaScript platform. looking ahead, looking behind. web application architecture evolution and trends show work to help bridge to future. web apps - classic. HTML Page. Browser (Client).
E N D
Marcelo Lopez Ruiz Senior Software Design Engineer Microsoft Corporation HTML5 and the future JavaScript platform
looking ahead, looking behind • web application architecture • evolution and trends • show work to help bridge to future
web apps - classic HTML Page Browser (Client) Initial Page Request http(s) transport HTML+CSS + JS Server
web apps - modern HTML Page Ajax Support (XMLHttpRequest) JavaScript Call HTML+CSS+Data Request Initial Page Request http(s) transport HTML+CSS + JS Response Server
from good AJAX apps to great AJAX apps • more interactive • more responsive • improved and specialized user experiences
HTML5 improvements data everywhere • Local Storage • Language Improvements • Network Improvements • Advanced Graphics • Media • Facebook • eBay • Netflix • Twitter • Flickr • StackOverflow • SharePoint • … running out of slide space
data everywhere • Huge data growth - Vast variety of data exist today, more coming. • Some companies are in the business of producing data so others make business by consuming it • REST open web protocols for querying and updating data
OData • Rely on standard web technologies like HTTP, Atom Publishing Protocol (AtomPub) and JSON • Operation semantics - mapping of HTTP methods (GET, POST, PUT, DELETE) • Query - resources, identified using Uniform Resource Identifiers
leverage capabilities resilient to network same code HTML5 improvements data everywhere • Local Storage • Language Improvements • Network Improvements • Advanced Graphics • Media • Facebook • eBay • Netflix • Twitter • Flickr • StackOverflow • SharePoint • … running out of slide space datajs multiple sources no browser diffs cache data smart prefetch cross domain
recap: datajs communication library • Abstracts out formats • Abstracts out communication details • All protocol capabilities: read, write, metadata • Full asynchronous support • Layered and open, great for unit tests
recap: datajs caching library • Let you focus on the problem and not the implementation • Fast page load • Fast scrolling and pagination • Web page survives connectivity hiccups • Works over Web Storage or in-memory today, lights up on IndexedDB tomorrow • You write it once – we test it against all browsers all form factors
It’s the final countdown(para-pa-pa para-pa-pa-pa) ie6 – back compat matters
library trends • fewer large frameworks, more small & focused • play well together • more structure to applications (MVC, MVVM) • still some common blocks missing e.g. change notification • common features: pay for play, avoid polluting namespace, work cross-browser, degrade gracefully
datajs future • long list, will only get longer, join us! • better support for authentication • first-class support for tracking local changes, validation, saving them, etc. • canvas and SVG integration – see other sessions! • deeper integration with libraries (plug-ins) • high-level API when IndexedDB is available
building the future together • http://datajs.codeplex.com/ • download and try it out, build it yourself • early adopters have been sending feedback and asking questions – join in!