Introduction
We use different ways to organize code. Procedural groups steps one after another. OOP groups data and actions together to model real things.
When you want simple step-by-step instructions, like a recipe.
When you want to model real-world objects, like a car or a person.
When your program grows bigger and you want to keep code organized.
When you want to reuse code easily by creating objects.
When you want to protect data and control how it changes.