Skip to main content

Command Palette

Search for a command to run...

Why OOP Is Important

Updated
•4 min read•View as Markdown

Introduction to Object-Oriented Programming (OOP) in JavaScript

As programs grow bigger, managing code can become difficult. Object-Oriented Programming (OOP) helps organize code in a structured way by grouping data and behavior together. It allows developers to build programs that are easier to manage, reuse, and understand.

In JavaScript, OOP is commonly implemented using classes and objects. Before jumping into code, let’s understand the concept with a simple real-world example.


1. Real-World Analogy: Blueprint → Objects

Think about building cars.

Before manufacturing cars, engineers first create a blueprint. The blueprint defines things like:

  • color

  • engine type

  • speed

  • number of wheels

Using that blueprint, many cars can be produced.

Example:

Blueprint → Car design

Objects created from it →
Car1
Car2
Car3

Each car is different, but all follow the same blueprint.

In programming:

Blueprint → Class
Cars → Objects

2. What is a Class in JavaScript?

A class is like a blueprint used to create objects. It defines the properties and behaviors that objects will have.

Example of a simple class:

class Car {
}

This class does not yet contain any properties or functions, but it serves as a structure for creating car objects.


3. Creating Objects Using Classes

Once a class is created, we can create objects using the new keyword.

Example:

class Car {
}

let car1 = new Car();
let car2 = new Car();

Here:

  • car1 and car2 are objects

  • Both were created from the Car class

This shows how classes help us create multiple objects easily.


4. Constructor Method

The constructor is a special method that runs automatically when a new object is created. It is used to initialize properties.

Example:

class Person {

  constructor(name, age) {
    this.name = name;
    this.age = age;
  }

}

Now we can create objects with values.

let person1 = new Person("Sagar", 22);

console.log(person1);

Output example:

Person { name: "Sagar", age: 22 }

Here:

  • this.name refers to the object's name

  • this.age refers to the object's age

The constructor helps assign values when objects are created.


5. Methods Inside a Class

Classes can also contain methods. Methods are functions that belong to the class and describe the behavior of objects.

Example:

class Person {

  constructor(name, age) {
    this.name = name;
    this.age = age;
  }

  greet() {
    console.log("Hello, my name is " + this.name);
  }

}

Creating an object and calling the method:

let person1 = new Person("Sagar", 22);

person1.greet();

Output:

Hello, my name is Sagar

Methods allow objects to perform actions.


6. Basic Idea of Encapsulation

Encapsulation means keeping related data and functions together inside a class.

Instead of writing separate variables and functions everywhere, we group them inside one structure.

Example idea:

Student
  → name
  → age
  → method to print details

Everything related to the student stays inside one class. This makes the code:

  • easier to understand

  • easier to maintain

  • reusable for many objects

Encapsulation is one of the main principles of Object-Oriented Programming.


Why OOP is Useful

OOP helps in:

  • organizing code better

  • reusing code using classes

  • creating multiple objects easily

  • managing complex applications

Many large applications use OOP to keep code clean and scalable.


Assignment (Practice)

Try this exercise in your JavaScript console or editor.


1. Create a Class Called Student

Create a class with two properties:

  • name

  • age

Example structure:

class Student {

  constructor(name, age) {
    this.name = name;
    this.age = age;
  }

}

2. Add a Method to Print Student Details

Add a method that prints the student information.

Example idea:

printDetails() {
  console.log(this.name + " is " + this.age + " years old");
}

3. Create Multiple Student Objects

Create multiple student objects from the class.

Example:

let student1 = new Student("Rahul", 20);
let student2 = new Student("Anita", 22);

student1.printDetails();
student2.printDetails();

Expected output example:

Rahul is 20 years old
Anita is 22 years old

Final Thoughts

Object-Oriented Programming is an important concept that helps developers build structured and reusable code. By using classes and objects, we can model real-world entities like students, cars, users, and products inside our programs.