UDEMY
UDEMY Logo

Python 3: Deep Dive (Part 4 - OOP) 

  • Offered byUDEMY

Python 3: Deep Dive (Part 4 - OOP)
 at 
UDEMY 
Overview

Python Object Oriented Programming (OOP)

Duration

37 hours

Total fee

399

Mode of learning

Online

Difficulty level

Intermediate

Credential

Certificate

Python 3: Deep Dive (Part 4 - OOP)
 at 
UDEMY 
Highlights

  • 30-Day Money-Back Guarantee
  • Certificate of completion
  • Full lifetime access
  • Learn from 152 downloadable resources and 1 article
Read more
Details Icon

Python 3: Deep Dive (Part 4 - OOP)
 at 
UDEMY 
Course details

What are the course deliverables?
  • Python Object Oriented Concepts
  • Classes
  • Methods and Binding
  • Instance, Class and Static Methods
  • Properties
  • Property Decorators
  • Single Inheritance
  • Slots
  • Descriptors
  • Enumerations
  • Exceptions
  • Metaprogramming
More about this course
  • This Python3: Deep Dive Part 4 course takes a closer look at object oriented programming (OOP) in Python.MAIN COURSE TOPICSwhat are classes and instancesclass data and function attributespropertiesinstance, class and static methodspolymorphism and the role special functions play in thissingle inheritanceslotsthe descriptor protocol and its relationship to properties and functionsenumerationsexceptionsmetaprogramming (including metaclasses)COURSE PREREQUISITESPlease 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 programmingfunctions, closures, scopes, decorators (using and writing them)zip, sorted, any, all, and the itertools module in generalsequences, iterables, iterators and generators (what they are and how to implement the corresponding protocols)generators, yield, and context managersmapping types, hashing and relation to object equalitysome prior knowledge of basic OOP conceptsknow how to work with Python virtual environments and pip installavailable Jupyter Notebook (freely available) to follow along with the course notebookshow 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.]
Read more

Python 3: Deep Dive (Part 4 - OOP)
 at 
UDEMY 
Curriculum

Introduction

Introduction

Prerequisites

Course Slides

Classes

Introduction

Objects and Classes - Lecture

Objects and Classes - Coding

Class Attributes - Lecture

Class Attributes - Coding

Callable Class Attributes - Lecture

Callable Class Attributes - Coding

Classes are Callables - Lecture

Classes are Callables - Coding

Data Attributes - Lecture

Data Attributes - Coding

Function Attributes - Lecture

Function Attributes - Coding

Initializing Class Instances - Lecture

Initializing Class Instances - Coding

Creating Attributes at Run-Time - Lecture

Creating Attributes at Run-Time - Coding

Properties - Lecture

Properties - Coding

Property Decorators - Lecture

Property Decorators - Coding

Read-Only and Computed Properties - Lecture

Read-Only and Computed Properties - Coding

Deleting Properties - Lecture

Deleting Properties - Coding

Some Questions on the Property Class

Class and Static Methods - Lecture

Class and Static Methods - Coding

Python Builtin and Standard Types

Class Body Scope - Lecture

Class Body Scope - Coding

Quick Recap

Project 1

Project Description

Project Solution - TimeZone

Project Solution - Transaction Numbers

Project Solution - Account Numbers, Names

Project Solution - Preferred TimeZone

Project Solution - Account Balance

Project Solution - Interest Rate

Project Solution - Transaction Codes

Project Solution - Confirmation Codes

Project Solution - Transactions

Project Solution - Testing with unittest

Polymorphism and Special Methods

Introduction

__str__ and __repr__ Methods - Lecture

__str__ and __repr__ Methods - Coding

Arithmetic Operators - Lecture

Arithmetic Operators - Coding

Rich Comparisons - Lecture

Rich Comparisons - Coding

Hashing and Equality - Lecture

Hashing and Equality - Coding

Booleans - Lecture

Booleans - Coding

Callables - Lecture

Callables - Coding

The __del__ Method - Lecture

The __del__ Method - Coding

The __format__ Method - Lecture

The __format__ Method - Coding

Project 2

Project Description

Project Solution

Single Inheritance

Introduction

Single Inheritance - Lecture

Single Inheritance - Coding

The object Class - Lecture

The object Class - Coding

Overriding - Lecture

Overriding - Coding

Extending - Lecture

Extending - Coding

Delegating to Parent - Lecture

Delegating to Parent - Coding

Slots - Lecture

Slots - Coding

Slots and Single Inheritance - Lecture

Slots and Single Inheritance - Coding

Project 3

Project 3 - Description

Project Solution - Approach and Setup

Project Solution - Validators and tests

Project Solution - Resources class and tests

Project Solution - CPU class and tests

Project Solution - Storage class and tests

Project Solution - HDD and SSD classes and tests

Descriptors

Introduction

Descriptors - Lecture

Descriptors - Coding

Getters and Setters - Lecture

Getters and Setters - Coding

Using as Instance Properties - Lecture

Using as Instance Properties - Coding

Strong and Weak References - Lecture

Strong and Weak References - Coding

Back to Instance Properties - Lecture

Back to Instance Properties - Coding

The __set_name__ Method - Lecture

The __set_name__ Method - Coding

Property Lookup Resolution - Lecture

Property Lookup Resolution - Coding

Properties and Descriptors - Lecture

Properties and Descriptors - Coding

Application - Example 1

Application - Example 2

Functions and Descriptors - Lecture

Functions and Descriptors - Coding

Project 4

Project Description

Solution - Part 1

Solution - Part 2

Enumerations

Introduction

Making the case for Enumerations

Enumerations - Lecture

Enumerations - Coding

Aliases - Lecture

Aliases - Coding

Customizing/Extending Enums - Lecture

Customizing/Extending Enums - Coding

Automatic Values - Lecture

Automatic Values - Coding

Project 5

Project Description

Project Solution

Exceptions (Single Inheritance)

Introduction

Python Exceptions - Lecture

Python Exceptions - Coding

Handling Exceptions - Lecture

Handling Exceptions - Coding

Raising Exceptions - Lecture

Raising Exceptions - Coding

Custom Exceptions - Lecture

Custom Exceptions - Coding

Project 6

Project Description

Project Solution

Metaprogramming

Introduction

Decorators and Descriptors - Review

The __new__ Method - Lecture

The __new__ Method - Coding

How Classes are Created - Lecture

How Classes are Created - Coding

Inheriting from type - Lecture

Inheriting from type - Coding

Metaclasses - Lecture

Metaclasses - Coding

Class Decorators - Lecture

Class Decorators - Coding

Decorator Classes - Lecture

Decorator Classes - Coding

Metaclass vs Class Decorator - Lecture

Metaclass vs Class Decorator - Coding

Metaclass Parameters - Lecture

Metaclass Parameters - Coding

The __prepare__ Method - Lecture

The __prepare__ Method - Coding

Classes, Metaclasses, and __call__

Metaprogramming Application 1

Metaprogramming Application 2

Metaprogramming Application 3

Attribute Read Accessors - Lecture

Attribute Read Accessors - Coding

Attribute Write Accessors - Lecture

Attribute Write Accessors - Coding

Accessors - Application

Python Updates

Python 3.10

Python 3.9

Python 3.8 / 3.7

Faculty Icon

Python 3: Deep Dive (Part 4 - OOP)
 at 
UDEMY 
Faculty details

Dr. Fred Baptiste
Designation : Software Engineer and Mathematician

Other courses offered by UDEMY

549
50 hours
– / –
3 K
10 hours
– / –
549
4 hours
– / –
599
10 hours
– / –
View Other 2346 CoursesRight Arrow Icon
qna

Python 3: Deep Dive (Part 4 - OOP)
 at 
UDEMY 

Student Forum

chatAnything you would want to ask experts?
Write here...