মেম্বার ফাংশন (Member Function)

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

এই যে গুল্প টা বললাম এইটাই মূলত ক্লাসের মেম্বার ফাংশনের গল্প। এইখানে ব্ল্যাকবক্স গ্রুপটাকে যদি ক্লাস ভাবি আর টিম মেম্বার কে ফাংশন তাহলে তাদের কাজ গুলো হচ্ছে তাদের ফাংশনের কোড । আর তাদের কাজ গুলো শেয়ার করা প্রক্রিয়া গুলো হচ্ছে এক্সেস মডিফায়ার।

এবার আসুন আমরা একটা কোডিং উদাহরন দেখি।

class BlackBox{
   constructor(){
     return "inital instruction during create team"
   }
   
   static member_0(){
     return "I can make coffee without my monther's help"
   }
   
   member1(){
      return "make coffee"
   }
   
   member2(){
      return "collect sugar and milk"
   }
   
   #member3(){
      return "collect the secret of coffee"
   }
      
   _member4(){
      return "buy cups if need and check every day"
   }
}

NOTE: উপরে উল্লেখিত কোড গুলো লক্ষ্য করলেই দেখবেন আমি এইখানে একটা ক্লাসে কতগুলো ফাংশন লিখে রেখেছি এইখানে যে ফাংশনের আগে কিছু নাই সেইটা মূলত পাবলিক ফাংশন # যুক্ত গুলো প্রাইভেট , _ যুক্ত গুলো প্রটেক্টেড এবং static যুক্ত গুলো static ফাংশন।

Last updated