Python 3: Deep Dive (Part 4 - OOP)
What you'll learn
- Python Object Oriented Concepts
- Methods and Binding
- Instance, Class and Static Methods
- Property Decorators
- Single Inheritance
- Strong knowledge of functional Python
- Closures and Decorators
- Iterators, Iterables and Generators
- Mapping Types, Hashing
- Some exposure to basic OOP
This Python3: Deep Dive Part 4 course takes a closer look at object oriented programming (OOP) in Python.
MAIN COURSE TOPICS
what are classes and instances
class data and function attributes
instance, class and static methods
polymorphism and the role special functions play in this
the descriptor protocol and its relationship to properties and functions
metaprogramming (including metaclasses)
Please note this is NOT a beginner level course. You must have a strong working knowledge of functional Python programming as well as some practical experience developing Python applications in order to fully benefit from this course.
In-depth functional Python programming
functions, closures, scopes, decorators (using and writing them)
zip, sorted, any, all, and the itertools module in general
sequences, iterables, iterators and generators (what they are and how to implement the corresponding protocols)
generators, yield, and context managers
mapping types, hashing and relation to object equality
some prior knowledge of basic OOP concepts
know how to work with Python virtual environments and pip install
available Jupyter Notebook (freely available) to follow along with the course notebooks
how to use git
[Please note that this is not a cookbook style course - I don't show you how to solve specific problems, but rather a broad and in-depth look at how OOP works in the context of Python, that will allow you to apply these concepts and techniques to your own problems.]
Who this course is for:
- Experienced intermediate Python developers who want a more in-depth understanding of Python OOP
My name is Fred Baptiste.
Since 2011 I have been focused on Python almost exclusively, mainly in REST API development and data management and analysis.
I have spent a lot of time and effort learning and gaining an in-depth understanding of Python and writing idiomatic Python, and I'd like to share that with you.
I'm definitely a Python enthusiast for many reasons, and I'd like to share that passion with you too!