Python 3: Deep Dive (Part 4 - OOP)
- Offered byUDEMY
Python 3: Deep Dive (Part 4 - OOP) at UDEMY Overview
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
Python 3: Deep Dive (Part 4 - OOP) at UDEMY Course details
- 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 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.]
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