While binary resources play a vital role in any application, WPF also provides a different kind of resource, called a logical resource. These logical resources are objects that can be shared throughout the application and can be accessed across multiple assemblies. These can be of two types, static logical resources and dynamic logical resources.
On the other hand, MVVM (Model-View-ViewModel) is a pattern that keeps a separation between the UI and the code, giving the designers and developers the flexibility to work on a single window without depending on each other.
In this chapter, we will first cover binary resources, logical resources, and then move forward to learn building applications using the MVVM pattern. We will also cover how to use RoutedCommands to demonstrate the Command Design Pattern in WPF applications, which can be invoked from multiple locations.