The document discusses various design patterns that can be used when programming such as MVC, Factory, Singleton, Strategy, and Observer. MVC separates an application into three layers - model, view, controller. The factory pattern creates objects without exposing instantiation logic. The singleton pattern ensures only one instance can be created. Strategy changes a process based on criteria. Observer notifies other objects of state changes through subscriptions.
Related topics: