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 the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.