Course · Foundations
Object-oriented programming, by principle
What object orientation is actually for — managing change — taught one principle at a time in Python and Java side by side, with C++ brought in wherever the language changes the answer.
- Lessons
- 16
- Diagrams
- 16
- Modules written
- 7 of 7
- Reading time · words
- 2 h · 21,909
Outline
Module 01 · 1 page
Start here
Why objects
Module 02 · 2 days · 3 pages
Objects and classes
Module 03 · 2 days · 2 pages
Encapsulation and abstraction
Encapsulation and abstraction
Module 04 · 2 days · 3 pages
Inheritance and composition
Inheritance and composition
Module 05 · 1 day · 2 pages
Polymorphism
Module 06 · 1 day · 2 pages
Object lifetime and memory
Module 07 · 3 days · 3 pages
Design in practice
Design questions
