often invisible to history and links Persisting Important State On Client: allowing offline use, local data Loads Once. No ‘Full-Page’ Refreshes. Progressive Download: Extra Features/Content Only As Required Templating in the Browser One way to define: How SPA Goes Beyond ‘AJAX’ Wednesday, April 24, 13
download, internal navigation/changes can happen in less than 100ms: essentially unnoticeable to the user. Future data updates generally happen in less than 1000ms, as there’s no template processing on the server & downloads are smaller. ‘Normal’ web reloads are 1000-3000ms Wednesday, April 24, 13
it’s about the recognition that Javascript is fully capable of handling all the interface logic that has traditionally been done in PHP, Java, Ruby, Python... The world woke up and realized that JavaScript is a Turing-complete language. SPA’s show us a path beyond ‘the web’, to all of networked app design... Wednesday, April 24, 13
interface logic in the browser, you’re really thinking about breaking the bonds between server and UI. Servers can do what they do best: data, biz-logic, authentication, transactions. Then, life is just UI’s and API End-Point Services that feed those UI’s. Any kind of UI: Web/Hybrid/Native, Desktop/Mobile, plus Watches, TV’s, Furniture, Appliances... Loose-Coupling Wednesday, April 24, 13
each time Traditional browser & server, plus offline/appcache storage of content Persistence on Mobile Devices via Hybrid frameworks: Cordova, etc. New Distribution vectors: Chrome, Windows 8, etc. Wednesday, April 24, 13