Skip to main content

Command Palette

Search for a command to run...

Inheritance, Encapsulation, Polymorphism

Published
3 min readView as Markdown
Inheritance, Encapsulation, Polymorphism

PHP একটি শক্তিশালী প্রোগ্রামিং ভাষা, যেখানে আমরা OOP (Object-Oriented Programming) ব্যবহার করে বড় বড় প্রজেক্ট সহজভাবে তৈরি করতে পারি। OOP এর তিনটি গুরুত্বপূর্ণ ধাপ হলো Inheritance, Encapsulation, এবং Polymorphism। আজ আমরা এগুলো সহজ উদাহরণ দিয়ে বুঝবো।

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

Inheritance মানে হলো, একটি ক্লাস (Parent) এর বৈশিষ্ট্য এবং ফাংশনগুলো আরেকটি ক্লাস (Child) ব্যবহার করতে পারে। ধরুন, আপনি “গাড়ি” নামের একটি ক্লাস বানালেন। পরে যদি আপনি “বাইকার” বা “লিমোজিন” ক্লাস বানান, তারা “গাড়ি” ক্লাসের বৈশিষ্ট্য ব্যবহার করতে পারবে।

উদাহরণ:

<?php
    class Car {
        public $brand;

        public function honk() {
            echo "বিপ! বিপ!";
        }
    }

    // Bike ক্লাস Car থেকে উত্তরাধিকার পেয়েছে
    class Bike extends Car {
        public function ride() {
            echo "বাইক চলছে।";
        }
    }

    $myBike = new Bike();
    $myBike->brand = "Hero";
    echo $myBike->brand; // Hero
    $myBike->honk();     // বিপ! বিপ!
    $myBike->ride();     // বাইক চলছে।
?>

কী শিখলাম:

  • Bike ক্লাস Car ক্লাস থেকে সব ফাংশন ও প্রপার্টি ব্যবহার করতে পারে।

  • কোড পুনরায় ব্যবহার করা সহজ হয়ে যায়।

Encapsulation (সংরক্ষণ)

Encapsulation হলো, আমাদের ডেটা (প্রপার্টি) কে প্রাইভেট বা প্রটেক্টেড রাখার প্রক্রিয়া। এতে করে বাইরে থেকে সরাসরি ডেটা পরিবর্তন করা যায় না, বরং getter ও setter মেথড ব্যবহার করে ডেটা অ্যাক্সেস করতে হয়।

উদাহরণ:

<?php
    class BankAccount {
        private $balance = 0; // সরাসরি অ্যাক্সেস সম্ভব নয়

        // ব্যালেন্স চেক করার মেথড
        public function getBalance() {
            return $this->balance;
        }

        // টাকা ডিপোজিট করার মেথড
        public function deposit($amount) {
            if($amount > 0) {
                $this->balance += $amount;
            }
        }
    }

    $account = new BankAccount();
    $account->deposit(500);
    echo $account->getBalance(); // 500
?>

কী শিখলাম:

  • ডেটা সুরক্ষিত থাকে।

  • প্রোগ্রামের নিরাপত্তা বাড়ে।

Polymorphism (বহুরুপতা)

Polymorphism মানে একটি ফাংশন বা অবজেক্ট একাধিক রূপে ব্যবহার করা যায়। সাধারণভাবে, একই মেথডের বিভিন্ন ক্লাসে আলাদা আচরণ দেখানোর ক্ষমতা।

উদাহরণ:

<?php
    class Animal {
        public function sound() {
            echo "কিছু শব্দ...";
        }
    }

    class Dog extends Animal {
        public function sound() {
            echo "ভূঃ! ভূঃ!";
        }
    }

    class Cat extends Animal {
        public function sound() {
            echo "মিঁয়াও! মিঁয়াও!";
        }
    }

    $dog = new Dog();
    $cat = new Cat();

    $dog->sound(); // ভূঃ! ভূঃ!
    $cat->sound(); // মিঁয়াও! মিঁয়াও!
?>

কী শিখলাম:

  • একই মেথডের নাম থাকলেও, ক্লাস অনুযায়ী আলাদা ফলাফল পাওয়া যায়।

  • কোড আরও ফ্লেক্সিবল ও রিইউজেবল হয়।

দৈনন্দিন জীবনের উদাহরণ

  1. Inheritance:
    বাবা-মায়ের বৈশিষ্ট্য বাচ্চাদের মধ্যে চলে আসে। যেমন, চোখের রঙ বা উচ্চতা।

  2. Encapsulation:
    ব্যাংক অ্যাকাউন্টের পিন বা ব্যালেন্স বাইরে থেকে সরাসরি দেখানো বা পরিবর্তন করা যায় না।

  3. Polymorphism:
    এক টেলিভিশন রিমোট দিয়ে বিভিন্ন চ্যানেল নিয়ন্ত্রণ করা যায়। প্রতিটি চ্যানেল আলাদা অনুষ্ঠান দেখায়।

সংক্ষেপে

বিষয়ব্যাখ্যা
InheritanceParent ক্লাসের বৈশিষ্ট্য ও ফাংশন Child ক্লাসে ব্যবহার করা।
Encapsulationডেটা প্রাইভেট রাখা ও Getter/Setter ব্যবহার করা।
Polymorphismএকই ফাংশন নামের আলাদা আচরণ।

PHP তে OOP শিখলে আপনার কোড পুনঃব্যবহারযোগ্য, নিরাপদ ও ফ্লেক্সিবল হয়ে যায়। নতুনদের জন্য প্রথমে ছোট উদাহরণ নিয়ে প্র্যাকটিস করা সবচেয়ে ভালো।

2 views

More from this blog

HTML-2026

HTML-কে আমরা সাধারণত ওয়েবের সবচেয়ে পুরোনো এবং স্থির প্রযুক্তিগুলোর একটি হিসেবে দেখি। CSS ও JavaScript যেখানে দ্রুত নতুন নতুন feature পাচ্ছে, HTML তুলনামূলকভাবে ধীরে পরিবর্তিত হয়। তবে ধীরে পরিবর্তন হওয়

Sep 3, 202612 min read2
HTML-2026
S

SliceTech

97 posts

Sharing basic web development tutorials.