Responsive Single Page Application Background
Technology giants such as Google and Twitter have leveraged the Single Page Application (SPA) style of web development for more than 5 years and now the adoption of the SPA by large Enterprises is taking off. Supporting this trend is the rapid maturity of responsive web design (RWD) frameworks like Twitter Bootstrap and Zurb Foundation. The combination of SPA and RWD pattern appears to have established itself as a significant trend for efficient web application development. Responsive SPA development typically yields an app that runs in any browser and feels more like a native application than a traditional web page. That means a consistent user experience for mobile and desktop users from a single code base.
Adoption of the supporting frameworks has been swift as shown below. Please note the Y axis is Percent growth, starting at 5,000%.
|(backbonejs or backbone.js), (angularjs or angular.js), (knockoutjs or knockout.js), (emberjs or ember.js) Job Trends||(backbonejs or Backbone.js) jobs - (angularjs or Angular.js) jobs - (knockoutjs or Knockout.js) jobs - (emberjs or Ember.js) jobs|
Responsive SPAs present a great opportunity to share back-end code and to simplify the testing of common business logic. SPA’s inherent separation of UI and application logic creates an opportunity to share common application logic and testing assets through a shared RESTful API. This allows browser-based web applications and native mobile applications to share the same application code on the “back end”.
While this type of application runs in the browser, it feels more like a Windows desktop or native mobile application than a web page. Popular SPAs include Gmail, Google Maps and Twitter. SPAs often provide a better user experience by avoiding the long pauses associated with classic web application page refresh. A well-designed SPA responds better over low bandwidth connections (after the initial page load) than traditional web pages.
Furthermore, organizations can reap substantial benefits by sharing their business logic across multiple channels, including both web and native mobile. SPA’s inherent separation of UI and application logic opens the door to sharing common application logic and testing assets, allowing an organization to develop a web application that quickly addresses both web and mobile web users.