PHP-তে অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং সহজভাবে ( ক্লাস এবং অবজেক্ট )

আলোচনার বিষয় ক্লাস এবং অবজেক্ট । প্রথমেই ক্লাস এবং অবজেক্ট নিয়ে কিছু জিনিস বুঝে নেওয়া যাক  । ক্লাস হচ্ছে অবজেক্টের জন্য টেমপ্লেট । অবজেক্ট তৈরী করার আগে একটা ক্লাস তৈরী করে নিতে হয় এবং এই ক্লাসটিকেই instantiate করলে এটা একটা অবজেক্ট হয়ে যায় । আর অবজেক্ট হচ্ছে অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং এর মুল মেশিন। একটা ক্লাস তৈরী করে তাকে আগে অবজেক্ট বানিয়ে নিতে হয় এরপর এই অবজেক্ট মাধ্যমে ক্লাস এর প্রোপার্টিজ এবং মেথডে একসেস নিয়ে কাজ করা হয়।

ক্লাস লিখার নিওমঃ

ক্লাস তৈরীর জন্য প্রথমেই class এই শব্দটি লিখে এরপর যেকোন নাম দিতে হয় আর এরপর দ্বিতীয় বন্ধনির (curly braces) ভিতর সব কোড লিখতে হয়।যেমন

<?php
class TunerClass{

public $tuners = "Hello Tuners";
}

?>

অবজেক্ট লিখার নিওমঃ উপরে যে ক্লাসটি তৈরী করেছি সেটি যদি অবজেক্ট বানাতে চায় তাহলে new শব্দটি দিয়ে নিচের মত করে কোড লিখলেই উপরের ক্লাসটি অবজেক্ট হয়ে যাবে ।

<?php
class TunerClass{

public $tuners = "Hello Tuners";
}

$TunerObject = new TunerClass();
?>

তাহলে দেখা যাচ্ছে উপরের ক্লাসটি সুধুমাত্র $TunerObject = new TunerClass(); < এই লাইনটার কারনে ক্লাস থেকে অবজেক্ট হয়ে গেল ।

এখন কথা হচ্ছে এই অবজেক্ট এর মাধ্যমে কিভাবে আমরা ক্লাস এর ভিতরের Element গুলা Access করব । ক্লাস এর ভিতরের Element গুলাকে Access করার জন্য লিখতে হবে

$TunerObject -> Element Name

এখানে Element Name মানে আপনি ওই ক্লাসের ভিতরের কোন Element টা Access করতে চাচ্ছেন । দেখুন আমাদের বানানো  ( TunerClass ) ক্লাসটির ভিতর একটি মাত্র Variable বা প্রোপার্টিজ আছে যার নাম $tuners তাহলে যদি আমরা $tuners কে Access করতে চাই তবে কোড লিখতে হবেঃ

<?php
class TunerClass{

public $tuners = "Hello Tuners";
}

$TunerObject = new TunerClass();

echo $TunerObject->tuners;
?>

উপরের কোডের কারনে echo হবে Hello Tuners  কারন  এখানে লক্ষ করুন TunerClass এর ভিতরে $tuners Variable এর মান ছিল Hello Tuners  আর সেটাই কিন্তু echo হয়েছে । এভাবে কোন ক্লাসের ভিতরের Variable বা Function কে Access করা যায় । একটা জিনিস এখানে ( -> ) এই চিহ্ন কেন ব্যবহার হয়েছে ? ব্যবহার হয়েছে কারন অবজেক্ট এর মাধ্যমে ক্লাস এর ভিতরের Element গুলাকে Access করতে হয় আর সেটা করার নিওম হচ্ছে ক্লাস টি instantiate করার পর অবজেক্টের নাম এবং তার পর ( -> ) এই চিহ্ন এবং তার পর যে Element Access করতে চান তার নাম দিতে হবে ।

এখন আসুন সহজ ভাবে বুঝি ক্লাস এবং অবজেক্ট । মনে করুন ক্লাস হচ্ছে সন্তান আর অবজেক্ট হচ্ছে বাবা-মা । বাবা-মা ব্যতীত সন্তান পাওয়া সম্ভব না । প্রতিটা মানুষের আত্মা বা রুহু আগে থেকেই বানানো আছে মানে সেগুলা সন্তান মানে সেগুলা একেকটা ক্লাস কিন্তু এই ক্লাস বা সন্তান প্রিথিবীতে বাবা-মা ছাড়া আসতে পারেনা । আর অবজেক্ট হচ্ছে সেই রাস্তা যার মাধ্যমে ক্লাস কে অবজেক্ট বানিয়ে সেই অবজেক্ট দ্বারা ক্লাসের সদস্যদের Access করা যায় মানে বাবা-মা এর মাধ্যমে সন্তান প্রিথিবীতে আসে । এখানে ক্লাস থেকে অবজেক্ট বানানোর নিওম হচ্ছে new শব্দ দিয়ে ক্লাস কে  instantiate করতে হয় । এখানে এই new শব্দটির মাধ্যমে ক্লাস অবজেক্ট হয় আর তার মাধ্যমে আমরা ক্লাসের ভিতরের Element গুলোর Access পাই । আর তাই বাবা-মা এর মাধ্যমে আমাদের আগমন আর ক্লাস কে অবজেক্ট বানিয়ে ক্লাসের Element গুলা ব্যবহার করা একই তাইনা (উদাহরন) ? আমাদের প্রথম পরিচয় বাবা-মা কে দিয়ে তাই আমাদের পরিচয় জানতে হলে আমাদের বাবা-মা এর মাধ্যমে জানতে হবে আর একই ভাবে ক্লাসের ভিতরের Element গুলাকে Access করতে হলে অবজেক্ট এর মধ্যমেই করতে হবে ।

তাই বলা যায় বাবা-মা ব্যতীত সন্তান যেমন অসম্ভব তেমন অবজেক্ট ব্যতীত ক্লাসও Valueless

আশা করি কিছুটা হলেও বুঝাতে পেরেছি । কেও যদি এই লিখা পড়ে কিছুটা হলেও বুঝতে পারেন তাতেই আমার সফলতা । তারপরেও কোন সমস্যা থাকলে কমেন্টে জানাবেন ।

কোন ভুল হলে ক্ষমা করবেন  আর ভালো লাগলে জানাবেন ।

ফেসবুকঃ  Abdullah Al Faruk Antu

Level New

আমি Abdullah Al Faruk Antu। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 12 বছর 5 মাস যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 10 টি টিউন ও 32 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 1 ফলোয়ার আছে এবং আমি টেকটিউনসে 0 টিউনারকে ফলো করি।

Ami Khub shadharon akjon manush.Manushke ar Allah er shokol sristike valobashi.


টিউনস


আরও টিউনস


টিউনারের আরও টিউনস


টিউমেন্টস

Level 0

পোস্টটা অনেক সুন্দর ও সহজ হয়েছে ।

অনেক ভাল লিখেছেন।অনেকদিন পর একটা ইউনিক টিউন দেখলাম। 😎

টিউনটা অনেকের উপকার দিবে।
আমি সব বুঝলেও এই অংশটা বুঝিনি,

এখন আসুন সহজ ভাবে বুঝি ক্লাস এবং অবজেক্ট । মনে করুন ক্লাস হচ্ছে সন্তান আর অবজেক্ট হচ্ছে বাবা-মা । বাবা-মা ব্যতীত সন্তান পাওয়া সম্ভব না । প্রতিটা মানুষের আত্মা বা রুহু আগে থেকেই বানানো আছে মানে সেগুলা সন্তান মানে সেগুলা একেকটা ক্লাস কিন্তু এই ক্লাস বা সন্তান প্রিথিবীতে বাবা-মা ছাড়া আসতে পারেনা । আর অবজেক্ট হচ্ছে সেই রাস্তা যার মাধ্যমে ক্লাস কে অবজেক্ট বানিয়ে সেই অবজেক্ট দ্বারা ক্লাসের সদস্যদের Access করা যায় মানে বাবা-মা এর মাধ্যমে সন্তান প্রিথিবীতে আসে । এখানে ক্লাস থেকে অবজেক্ট বানানোর নিওম হচ্ছে new শব্দ দিয়ে ক্লাস কে instantiate করতে হয় । এখানে এই new শব্দটির মাধ্যমে ক্লাস অবজেক্ট হয় আর তার মাধ্যমে আমরা ক্লাসের ভিতরের Element গুলোর Access পাই । আর তাই বাবা-মা এর মাধ্যমে আমাদের আগমন আর ক্লাস কে অবজেক্ট বানিয়ে ক্লাসের Element গুলা ব্যবহার করা একই তাইনা (উদাহরন) ? আমাদের প্রথম পরিচয় বাবা-মা কে দিয়ে তাই আমাদের পরিচয় জানতে হলে আমাদের বাবা-মা এর মাধ্যমে জানতে হবে আর একই ভাবে ক্লাসের ভিতরের Element গুলাকে Access করতে হলে অবজেক্ট এর মধ্যমেই করতে হবে ।

তাই বলা যায় বাবা-মা ব্যতীত সন্তান যেমন অসম্ভব তেমন অবজেক্ট ব্যতীত ক্লাসও Valueless

    @আদনান:
    ক্লাস কে আমি সন্তান এবং অবজেক্ট কে আমি বাবা-মা হিসাবে বুঝানোর চেষ্টা করেছি । ক্লাস কে new শব্দ দিয়ে instantiate করলে ক্লাস টি অবজেক্ট হয় এবং instantiate করার পর ক্লাসের ভিতরের সদস্যদের এক্সেস করা যাই তাই কিনা ? এই instantiate করা বলতে আমি বাবা-মা এর মিলন বুঝিয়েছি মানে বাবা এবং মা এর মিলনের মাধ্যমে সন্তান প্রিথিবীতে আসে তাইনা ? আর আমি সেটাই উদাহরন দিয়ে বুঝাতে চেয়েছি যে অবজেক্ট কে instantiate মানে অবজেক্ট এর মিলনের ফলে ক্লাসের সদস্যদের এক্সেস করা যাবে । এটা সুধু একটা উদাহরন মাত্র । যারা উপরের লিখা পড়েও কন্সেপ্ট টা ধরতে পারবেনা তাদের জন্য লিখেছিলাম । @আদনান ভাই

Level 2

চমৎকার টিউন, আশাকরি ধাপে ধাপে টিউন শেষ করবেন; মাঝ পথে ছেড়ে দেবেন না…

Level 2

tuners;
?>

Explanation ta khub valo korsen. Waiting for next tunes. Thanks 🙂