Object Oriented Programming with Python. Learn the basics.
What you'll 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.
- Beginner level knowledge of Python, or any other programming language
- Understanding the problem of growing, unreadable code
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.
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
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
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
2,5 hour video time. 5 Hours with exercises.
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.”
Who this course is for:
- 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
Loek van den Ouweland (Wunderlist, Microsoft Todo) is a born teacher. Right from the start of his career, he was told that a programmer helps his customers best when he shows what his products can do and how they are built.
He worked in many companies as programmer and trainer and enjoys to share the secrets of programming with others.
Loek has 25 years of experience training people with different backgrounds, all ages, working in branches ranging from medical systems to manufacturing and academics to aerospace.