Single-Page Application Approach

Modern web applications support rich interactions with multiple web components on a page. Each web component has many intermediate states (such as menu open, menu item X selected, menu item Y selected, menu item clicked). Server-side rendering is hard to implement for all the intermediate states because small view states do not map well to URLs.

An alternative to server-side rendering is the single-page application approach that works inside a browser. A single-page application can update any part of the View function without requiring a server round trip to reload a page during use. This is achieved by separating the data from the presentation of data by having the Model function handle data and the View function read from the Model function (see c_create_modern_web_applications.html#concept_t5z_drm_n1b for more information).

Figure 1. Single-Page Application Approach

A single-page application still needs to make calls to the server back end to get its data, but that server can be built with a completely different technology: (like Node, Java or PHP).