Chapter 14. JavaScript Frameworks

“Framework” is an overloaded term, used to represent anything from simple libraries and data schemas, to fullblown content systems. In this chapter, when I use the word “framework,” I’m using it to represent a class of software created to implement a class of applications, though each specific application is unique.

For today’s JavaScript developer, a framework can vary from a complete server-side (or client-based) database application, to authorizations systems, and so on. A framework differs from a standard library or module because the framework is meant to provide all of the underlying infrastructure necessary to solve a complete and typically complex task.

Many of the frameworks—in both the client and the server—are based on a specific paradigm: MVC, or the Model-View-Controller paradigm. MVC is based on a three-way architecture for applications where data, business rules, and the functions to maintain both are represented by the Model, the user interface is the View, and the Controller is the communication between the two. A well-represented variation of the MVC is one where the services of the Controller are merged into that of the View, leading us to reclassify MVC as MV*—encompassing systems that break out the Controller as well as those that don’t.

The client-side frameworks, such as AngularJS, support a popular programming paradigm frequently associated with the Single Page Application, or SPA. The basis for these types of applications is ...

Get JavaScript Cookbook, 2nd Edition now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.