Blog

Object-Oriented Programming (OOP) কী?

OOP এমন একটি প্রোগ্রামিং স্টাইল, যেখানে সব কিছুকে বস্তু (object) হিসেবে দেখা হয়।
এই বস্তুগুলো ডেটা (property) আর কাজ (method/function) একসাথে ধারণ করে।

সাধারণ জীবনের উদাহরণ:

ধরো তুমি একটা ফুটবল গেম বানাতে চাও। এখানে অনেক কিছু থাকবে:

  • খেলোয়াড় (Player)

  • বল (Ball)

  • রেফারি (Referee)

  • স্টেডিয়াম (Stadium)

প্রতিটা জিনিসকে তুমি Object হিসেবে দেখবে।

OOP এর ৪টি মূল স্তম্ভ (pillar):

নামব্যাখ্যাউদাহরণ
1. Encapsulationডেটা ও ফাংশন একসাথে ঢেকে রাখাপ্লেয়ারের ভিতরেই run(), shoot() আছে
2. Inheritanceএক ক্লাস থেকে আরেকটি ক্লাস গঠন করাPlayer → Goalkeeper (Player-এর বৈশিষ্ট্য পায়)
3. Polymorphismএকই ফাংশনের ভিন্ন ব্যবহারshoot() → গোলকিপার রক্ষা করবে, স্ট্রাইকার গোল দিবে
4. Abstractionজটিলতা লুকানো, দরকারি অংশ দেখাCar.start() → ভিতরে কী হচ্ছে না জানলেও গাড়ি চলে

বাস্তব উদাহরণ: ফুটবল প্লেয়ার

Class: Player

c++
class Player {
public:
string name;
int jerseyNumber;

void run() {
cout << name << " is running!" << endl;
}

void shoot() {
cout << name << " shoots the ball!" << endl;
}
};

Object: Jubayer নামে প্লেয়ার

c++
Player p1;
p1.name = "Jubayer";
p1.jerseyNumber = 10;

p1.run(); // Jubayer is running!
p1.shoot(); // Jubayer shoots the ball!

তাহলে সহজ ভাষায় মনে রাখো:

বিষয়উদাহরণ
Classমানুষের ডিজাইন
ObjectJubayer, Rahim, Karim – বাস্তব মানুষ
Propertyনাম, বয়স, জার্সি নাম্বার
Method/Functionদৌড়ানো, গোল দেওয়া

মনে রাখার ছোট্ট কাহিনি:

“OOP মানে — বস্তুকে চিন, তার কাজ বোঝ, সব কিছু গুছিয়ে কোড কর।”