
Embark on this introductory course to master Python object oriented programming, exploring classes, objects, attributes, and methods, plus encapsulation, inheritance, polymorphism, and abstract concepts like the diamond problem.
Install Python on Windows, Mac, and Linux; pick an editor or IDE (Visual Studio Code, Sublime, or PyCharm), install the Python extension, and run a hello world program.
Explore how object oriented programming centers on classes and objects and unlocks inheritance, polymorphism, abstraction, and encapsulation to create reusable, maintainable, and secure code across languages.
Explore how classes bundle data and functionality to create custom data types, and how objects instantiate these classes to model employees with attributes and methods in Python.
Implement and use classes and objects in Python by defining an employer class with attributes name, age, and salary, and a get salary method that returns the salary.
Explain the difference between instance attributes and class attributes with employee examples: name and salary are instance attributes, while the company name is a class attribute shared by all objects.
Analyze the difference between instance methods and static methods in Python, where instance methods use self and static methods, decorated with @staticmethod, do not require it.
explore how the __init__ method initializes object attributes during instantiation, sets default values, and differentiates between class attributes and instance attributes in Python OOP.
Learn how the self parameter binds a method to its object in Python, and how Python passes the object automatically to access instance data.
Explore encapsulation by bundling data and methods in a class and hiding implementation, then learn abstraction through a simple interface like Google's search box.
Implement encapsulation and abstraction in Python by building a BMI calculator that exposes a simple user interface while hiding the underlying class and calculations.
Learn how a child class derives from a parent class through inheritance in Python. See how single inheritance reuses code and models real-world relationships, as in person and teacher.
Explore multi level inheritance in Python, where a teaching assistant inherits from a student, which inherits from a person, showing access to name, age, gender, fees, and salary.
This lecture explains multiple inheritance in Python by building a person base class and student, faculty, and DEA subclasses, showing attribute inheritance, order of bases, and cross-language notes.
Examine the diamond shape problem in Python's multiple inheritance, compare with Java and C++, and understand how attribute conflicts arise and why simpler inheritance is preferred.
Understand Python's access specifiers in OOP: public, protected (single underscore), and private (double underscore), using naming conventions since Python has no private keyword, with public by default.
Explore polymorphism in Python through function overriding, where child classes redefine parent methods with the same name. See Punjab and KPK override language and learn about memory savings via super.
Explore how the super method in Python accesses the inherited method from the parent class, enabling polymorphism and cleanly handling overridden functions.
Learn why Python does not support function overloading and how multiple method definitions are handled by the latest version in a class, contrasted with Java and C++.
Learn how to overload Python operators using the __add__ method to define addition for custom objects, demonstrated with a calculator class and two numbers.
Define abstract classes and abstract methods using Python's ABC and abstractmethod decorators. Explore how subclassing enforces implementation and prevents instantiation of abstract classes through animal examples.
WHY WE NEED TO LEARN OBJECT-ORIENTED PROGRAMMING
There is no doubt that Python is one of the most powerful programming languages right now in the world. In every general-purpose programming language, Object-Oriented Programming (OOP) is the most important part to understand. If you want to grow in programming then you must need to learn all about OOP.
When you move further in Python like Data Science or Machine Learning then there you definitely need OOP skills. Otherwise, you can't survive there. Also, Object-Oriented Programming (OOP) concepts are the first thing that is asked in any coding interview. It's compulsory for you to learn these concepts as a professional programmer.
ABOUT THIS COURSE:
This course is designed for all types of programmers, who want to enhance their skills. This course is crisp and clear to understand. Everything is to the point. No extra stuff is added. After taking this course you will be an intermediate Python Developer, then you can move further on and learn advanced libraries or modules of Python according to your field.
This course will cover all the concepts of Object-Oriented Programming and will make you confident in your skills. If you don't have basic knowledge, then you can go to my profile and take my FREE Python course for absolute beginners. Complete that and come back and take this course. That could be a better idea.
=== Super Fiendly Support ===
If you ever get stuck in any problem, I'm here to unstuck you. I always respond as fast as I can. Because I know there’s nothing worse than getting stuck into problems, especially programming problems. So, I am always here to support you.
If you know about data types, variables, conditional statements, loops, functions,s, and lists then you are good to go. Join the course right now without wasting any time.
In this course you will all about:
Classes & Objects
Attributes & Methods
Encapsulation
Abstraction
Inheritance
Polymorphism
and more many topics in OOP (Python)
So, you really make up your mind and take your Python programming skills to the next level. Then JOIN THIS COURSE RIGHT NOW!