Python 3 Object-Oriented Programming: Build robust and maintainable software with object-oriented design patterns in Python 3.8, 3rd Edition
Uncover modern Python with this guide to Python data structures, design patterns, and effective object-oriented techniques
- In-depth analysis of many common object-oriented design patterns that are more suitable to Python's unique style
- Learn the latest Python syntax and libraries
- Explore abstract design patterns and implement them in Python 3.8
Object-oriented programming (OOP) is a popular design paradigm in which data and behaviors are encapsulated in such a way that they can be manipulated together. This third edition of Python 3 Object-Oriented Programming fully explains classes, data encapsulation, and exceptions with an emphasis on when you can use each principle to develop well-designed software.
Starting with a detailed analysis of object-oriented programming, you will use the Python programming language to clearly grasp key concepts from the object-oriented paradigm. You will learn how to create maintainable applications by studying higher level design patterns. The book will show you the complexities of string and file manipulation, and how Python distinguishes between binary and textual data. Not one, but two very powerful automated testing systems, unittest and pytest, will be introduced in this book. You'll get a comprehensive introduction to Python's concurrent programming ecosystem.
By the end of the book, you will have thoroughly learned object-oriented principles using Python syntax and be able to create robust and reliable programs confidently.
What you will learn
- Implement objects in Python by creating classes and defining methods
- Grasp common concurrency techniques and pitfalls in Python 3
- Extend class functionality using inheritance
- Understand when to use object-oriented features, and more importantly when not to use them
- Discover what design patterns are and why they are different in Python
- Uncover the simplicity of unit testing and why it's so important in Python
- Explore concurrent object-oriented programming
Who this book is for
If you're new to object-oriented programming techniques, or if you have basic Python skills and wish to learn in depth how and when to correctly apply OOP in Python, this is the book for you. If you are an object-oriented programmer for other languages or seeking a leg up in the new world of Python 3.8, you too will find this book a useful introduction to Python. Previous experience with Python 3 is not necessary.
Table of Contents
- Object-oriented Design
- Objects in Python
- When Objects Are Alike
- Expecting the Unexpected
- When to Use Object-oriented Programming
- Python Data Structures
- Python Object-oriented Shortcuts
- Strings and Serialization
- The Iterator Pattern
- Python Design Patterns I
- Python Design Patterns II
- Testing Object-oriented Programs