PHP – অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং (OOP)

PHP – অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং (OOP) কী?

OOP বা অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং হল এমন একটি প্রোগ্রামিং পদ্ধতি যেখানে অবজেক্টের মাধ্যমে কোড স্ট্রাকচার তৈরি করা হয়। PHP-তে OOP আপনাকে আরও উন্নত, পুনঃব্যবহারযোগ্য এবং স্কেলেবল কোড লিখতে সাহায্য করে।

OOP এর মূল ধারণা

OOP-তে নিচের চারটি মূল বৈশিষ্ট্য থাকে:

ধারণা বর্ণনা
Encapsulation ডেটা ও মেথড একসাথে ক্লাসে রাখা হয়
Inheritance একটি ক্লাস অন্য ক্লাসের বৈশিষ্ট্য গ্রহণ করে
Polymorphism একই মেথড বিভিন্নভাবে ব্যবহার করা যায়
Abstraction অপ্রয়োজনীয় তথ্য লুকিয়ে দরকারি অংশ প্রকাশ করা

PHP-তে ক্লাস ও অবজেক্ট

OOP শুরু হয় ক্লাস এবং অবজেক্ট দিয়ে। ক্লাস হল একটি ব্লুপ্রিন্ট এবং অবজেক্ট হল সেই ক্লাসের বাস্তব রূপ।

উদাহরণ ১: একটি সাধারণ ক্লাস ও অবজেক্ট

<?php
class Person {
    public $name;

    function setName($name) {
        $this->name = $name;
    }

    function getName() {
        return $this->name;
    }
}

$obj = new Person();
$obj->setName("Rahim");
echo $obj->getName();
?>

এখানে Person ক্লাসের মাধ্যমে একটি অবজেক্ট তৈরি করা হয়েছে, এবং সেটি দিয়ে নাম সেট ও গেট করা হচ্ছে।

Constructor মেথড

Constructor হল একটি স্পেশাল মেথড যা অবজেক্ট তৈরি হওয়ার সময় স্বয়ংক্রিয়ভাবে কল হয়।

<?php
class Student {
    function __construct() {
        echo "Constructor Automatically Called!";
    }
}

$std = new Student();
?>

Inheritance (উত্তরাধিকার)

একটি ক্লাস থেকে আরেকটি ক্লাস সব বৈশিষ্ট্য গ্রহণ করতে পারে।

<?php
class Animal {
    public function sound() {
        echo "Some sound";
    }
}

class Dog extends Animal {
    public function sound() {
        echo "Bark!";
    }
}

$dog = new Dog();
$dog->sound(); // আউটপুট: Bark!
?>

Polymorphism ও Overriding

একই নামের মেথড subclass-এ নতুনভাবে define করলে সেটিকে override বলা হয়। এটি Polymorphism-এর একটি উদাহরণ।

OOP ব্যবহার করার সুবিধা

  • কোড রিইউজযোগ্য এবং স্কেলযোগ্য হয়
  • বড় বড় প্রজেক্টে কোড মেইনটেইন করা সহজ
  • মডুলার কোড লেখায় সহায়তা করে
  • আধুনিক Framework গুলোতে (Laravel, Symfony) OOP অপরিহার্য

শেষ কথা

PHP-তে OOP শেখা আপনার ক্যারিয়ারে অনেক বড় ভূমিকা রাখতে পারে। একটি পরিষ্কার, মডুলার এবং সংগঠিত কোডবেস তৈরি করতে চাইলে OOP ব্যবহার করা অত্যন্ত জরুরি।

Leave a Reply