When you enroll through our links, we may earn a small commission—at no extra cost to you. This helps keep our platform free and inspires us to add more value.

Udemy logo

Object Oriented Programming (OOP) with Python for beginners

Structure code with Classes, Inheritance, Polymorphism, Encapsulation and Dependency Injection and learn Unit Testing.

     
  • 4.7
  •  |
  • Reviews ( 512 )
₹589

This Course Includes

  • iconudemy
  • icon4.7 (512 reviews )
  • icon2h 31m
  • iconenglish
  • iconOnline - Self Paced
  • iconprofessional certificate
  • iconUdemy

About Object Oriented Programming (OOP) with Python for beginners

Are you a beginning Python programmer who wants to prevent spaghetti code by organizing code better? Do you often have to work with unstructured code that is hard to understand? Or are you a developer that brings experience from other programming languages and want to learn how to use OOP in Python? Then this course is for you! The 'Object Oriented Programming with Python' course guides you through an exercise, starting with a small, naive approach that gradually is turned into a well

structured Object Oriented Design

. Each step of the journey introduces new challenges, communicates intended changes with UML and uses tools from the OOP toolkit to solve problems.

Target audience

Developers who especially benefit from this course, are:

Beginner Python developers who want to organise their code better by using OOP

Developers that bring experience from another programming language who want to learn using OOP with Python

Developers that inherit spaghetti code from others at work and need bring structure to it

Challenges

You have heard that object oriented programming can help you to structure your code. But many tutorials overwhelm you with

technical blah blah

and seem to focus too much on how to implement OOP features. But if you do not understand why to do things, you will use OOP without without using its full potential.This can lead to writing ineffective code or worse: give up on the idea of OOP.This course is different! It starts with the

absolute beginning

and introduces

common

challenges

that are solved by using Object Oriented Programming. This way, you will learn OOP from the

ground up,

step by step.

What can you do after this course?

You will organize your code better so changes in the future do not cause nightmares anymore

You can visualize and communicate your code to your colleagues with UML, before writing a single line of code

Your code will be organized in small, predictable and testable units

Topics

Introduction OOP

: Understanding the problems that are solved with OOP

Classes and objects

: Create classes, the class initializer, and instantiate objects

UML

: Visualize and communicate the class diagrams with the Unified Modeling Language

Inheritance

: Prevent duplicate code by creating subclasses

Encapsulation

: Prevent access to class information

Dependency injection

: Decouple your code by injecting dependencies

Polymorphism

: Allow your code to be extended with minimal changes to the system

Composition

: Prevent an explosion of subclasses by using composition

Unit testing

: Write Unit Tests to test the correctness of your code

Duration

2,5 hour video time. 5 Hours with exercises.

The teacher

This course is taught by Loek van den Ouweland, a senior software engineer with 25 years of professional experience. Loek is the creator of Wunderlist for windows, Microsoft To-do and Mahjong for Windows and loves to teach software engineering.

Students of this course tell me:

“An excellent, concise and clear explanation of the basics of OOP. Fantastic course! Thanks Loek.”

“This is the Python OOP course I've been searching for a long time. Many courses teach OOP syntax but few courses help you understand the "why", and then followed by the "how". This course does it and also with realistic scenarios that make it more relevant to the workplace. Highly recommended!”

“I thought OOP it was really difficult. But through this course, OOP is something that makes coding much readable and robust. I am sure this course will help people who have hard time coding plain and simple.”

What You Will Learn?

  • describe OOP by its official definition, its features and the role it plays in building robust software .
  • group data in objects by using classes, initializers, encapsulation and inheritance .
  • visualize and communicate your classes with the help of UML diagrams. .
  • decouple and refactor growing code by using polymorphism and dependency injection .
  • avoid an explosion of subclasses by knowing when to favor composition over inheritance .
  • test your code for correctness, by creating and executing unit tests..