This chapter will focus on a different programming model for client development: Model-View-ViewModel (MVVM). It will reiterate what you have already learned about SignalR, but you will also start to see a recurring theme in how you should architect decoupled software that adheres to the SOLID principles. It will also show the benefit of thinking in single page application terms (often referred to as Single Page Application (SPA)), and how SignalR really fits well with this idea.
In this chapter, we will cover the following topics:
Introduction to MVVM
Concrete implementation of MVVM using KnockoutJS
Brush up against the concept of SPA