Object Oriented Programming Roadmap
Programming paradigms based on objects and classes.
Object Oriented Programming
✓
Classes & Objects
✓
Inheritance
✓
Foundations
✓
Polymorphism
✓
Encapsulation
✓
Core Concepts
✓
Abstraction
✓
Composition
✓
SOLID Principles
✓
Intermediate Skills
Text version of this roadmap
1. Foundations
- Classes & Objects: Blueprint and instance, constructors, fields, methods, and the 'new' keyword.
- Inheritance: IS-A relationship, superclass/subclass, method overriding, and virtual dispatch.
- Polymorphism: Compile-time (overloading) vs runtime (overriding), subtype polymorphism, and interfaces.
2. Core Concepts
- Encapsulation: Data hiding, access modifiers (public, private, protected), getters/setters, and invariants.
- Abstraction: Abstract classes, interfaces, information hiding, and contract-based design.
- Composition: HAS-A relationship, object composition, aggregation, and favoring composition over inheritance.
3. Intermediate Skills
- SOLID Principles: Single responsibility, open/closed, Liskov substitution, interface segregation, dependency inversion.