Python Object-Oriented Programming (2020)
1h 36mIntermediate2020-06-03
Authors

Joe Marini
Senior Developer Advocate at Google, Developer
Course details
The object-oriented programming (OOP) features in Python make it easier to build programs of increasing complexity and modularity. In this course, you can learn how to apply core OOP principles like inheritance and composition along with some Python-specific features like “magic” methods and data classes to build programs that are extensible and efficient. Begin by brushing up on some object-oriented basics, and then use Python features like magic methods to make your classes integrate tightly with the Python language and data classes to dramatically reduce the amount of boilerplate code needed to build data-centric objects.
Topics include:
Defining classes
Checking instance types
Using multiple inheritance
Creating objects with composition
Leveraging magic methods
Calling objects like functions
Defining data classes
Creating immutable data classes
Topics include:
Defining classes
Checking instance types
Using multiple inheritance
Creating objects with composition
Leveraging magic methods
Calling objects like functions
Defining data classes
Creating immutable data classes
Skills covered
Object-Oriented ProgrammingPythonProgramming LanguagesOpen SourceSoftware DevelopmentOne-Off
Concepts
0. Introduction
- 01 - Python object-oriented programming
- 02 - What you should know
- 03 - Setting up the development environment
1. Objected-Oriented Python
- 04 - Object-oriented programming refresher
- 05 - Basic class definition
- 06 - Instance methods and attributes
- 07 - Checking instance types
- 08 - Class methods and members
2. Inheritance and Composition
- 09 - Understanding inheritance
- 10 - Abstract base classes
- 11 - Using multiple inheritance
- 12 - Interfaces
- 13 - Understanding composition
3. Magic Object Methods
- 14 - What are magic methods
- 15 - String representation
- 16 - Equality and comparison
- 17 - Attribute access
- 18 - Callable objects
4. Data Classes
- 19 - Defining a data class
- 20 - Using post initialization
- 21 - Using default values
- 22 - Immutable data classes
Conclusion
- 23 - Next steps