The choice of implementation language affects the use of design patterns. Naturally, some languages are more applicable for certain tasks than others. Each language has its own set of strengths and weaknesses. In this book, we introduce some of the better known design patterns in Python. You will learn when and how to use the design patterns, and implement a real-world example which you can run and examine by yourself.
You will start with one of the most popular software architecture patterns which is the Model- View-Controller pattern. Then you will move on to learn about two creational design patterns which are Singleton and Factory, and two structural patterns which are Facade and Proxy. Finally, the book also explains three behavioural patterns which are Command, Observer, and Template.
2. Creating Only One Object with the Singleton Pattern
3. Building Factories to Create Objects
4. The Facade Design Pattern
5. Facilitating Object Communication with Proxy and Observer Patterns
6. Encapsulating Calls with the Command Pattern
7. Redefining Algorithms with the Template Method