YoVDO

Python 3: Deep Dive (Part 4 - OOP)

Offered By: Udemy

Tags

Python Courses Object-oriented programming Courses Metaprogramming Courses

Course Description

Overview

Python Object Oriented Programming (OOP)

What you'll learn:
  • Python Object Oriented Concepts
  • Classes
  • Methods and Binding
  • Instance, Class and Static Methods
  • Properties
  • Property Decorators
  • Single Inheritance
  • Slots
  • Descriptors
  • Enumerations
  • Exceptions
  • Metaprogramming

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

  • properties

  • instance, class and static methods

  • polymorphism and the role special functions play in this

  • single inheritance

  • slots

  • the descriptor protocol and its relationship to properties and functions

  • enumerations

  • exceptions

  • metaprogramming (including metaclasses)


COURSE PREREQUISITES

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.]


Taught by

Fred Baptiste

Related Courses

Mastering Programming with MATLAB
Vanderbilt University via Coursera
Advanced R Programming
Johns Hopkins University via Coursera
Application Programming Fundamentals
LearnQuest via Coursera
Aprendiendo Python con circuitos digitales
Coursera Project Network via Coursera
Basics in computer vision
Higher School of Economics via Coursera