Design Patterns In Python
Authors: Rahul Verma, Chetan Giridhar
This book is about learning design patterns through the medium of Python language. If you are a tester interested in design of test automation frameworks or thinking about how a single test automation problem could be solved in different ways, this book would prove to be very useful. If you are new to design patterns being a programmer or you want to explore OOP in Python further, this text provides the first building blocks.
(The chapters with hyperlinks are available, others are work in progress )
- Copyright Information
- About the Authors
- Foreword – Vipul Kocher
- Preface
- Object Oriented Programming
- 1. Model-View-Controller Pattern
- 2. Command Pattern
- 3. Observer Pattern
- 4. Facade Pattern
- 5. Mediator Pattern
- 6. Factory Pattern
- 7. Proxy Pattern
- 8. Abstract Factory Pattern
- 9. Adapter Pattern
- 10. Chain of Responsibility Pattern
- 11. Decorator Pattern
- 12. Memento Pattern
- 13. Null Pattern
- 14. Object Pool Pattern
- 15. Prototype Pattern
- 16. Singleton Pattern
- 17. State Pattern
- 18. Strategy Pattern
- 19. Template Method Pattern
- References and Further Reading
Renjith Krishnan -FreeDigitalPhotos.net
http://www.freedigitalphotos.net/images/view_photog.php?photogid=721
Version 0.1 of the book containing 7 design patterns is now available for download.
Note: Online version is a more updated version of this ebook at any given point of time in terms of corrections and updated content. We plan to release updated version of the offline PDF version at regular intervals to keep up with the updated content in online version.
There would be mistakes. Some of them would be directly visible and some of them could be more subtle. Please write back to us so that we can correct the same. You can use the contact form at Testing Perspective website to do so or write to us at feedback@testingperspective.com.


In the example of the receptionist and manager context.
Proxy ‘The receptionist’ has the property self.busy
Maybe she is filing her nails but I wanted to speak with the Manager, who does not seem to be busy.
So she hangs up
‘Maybe I missed something’?