অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং | ICT লিখিত পর্ব ৫.১

By | February 22, 2020

অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং এর বিষয়ে শিক্ষক নিবন্ধনের আজকের পর্বে আপনাদের সকলকে স্বাগতম। এটি ICT বিষয়ে কলেজ পর্যায়ে বেসরকারি শিক্ষক নিবন্ধনের চলমান একটি সিরিজ এবং এই বিষয়ে অধ্যায় ১ থেকে এখন পর্যন্ত সকল চ্যাপ্টার দেখানো হচ্ছে।

অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং অধ্যায়টি মোট ২টি পর্বে ও ২টি ভিডিওর মাধ্যমে দেখানো হবে। আজকে এর প্রথম পর্ব।

অবেজেক্ট অরিয়েন্টেড প্রোগ্রামিং

এই অধ্যায়ের সিলেবাসটা দেখে নেয়া যাক

অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং সিলেবাস
অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং সিলেবাস

এই পর্বের আগের পর্বসমূহ দেখতে হলে নিচে ক্লিক করুন:

অ্যারে, ক্যারেক্টার ও ফাংশন | নিবন্ধন লিখিত (ICT) পর্ব ২.৩

ব্রাঞ্চিং ও লুপিং | শিক্ষক নিবন্ধন লিখিত (ICT) পর্ব ২.২

অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং

Computer Programming এ class এবং object এর ধারণাকে কাজে লাগিয়ে যে Programming করা হয় তাকে বলা হয় অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং (Object Oriented Programming). এই প্রোগ্রামিং এর মূল ধারণা ৩টি:

ইনহেরিটেন্স (Inheritance): ইংরেজি শব্দ inheritance এর অর্থ হচ্ছে উত্তরাধিকার। অকজেক্ট অরিয়েন্টেড প্রোগ্রামিং এ এক class থেকে কিছু ফাংশনালিটি (method) ও বৈশিষ্ট্য (property) অন্য class এ শেয়ার করার একটি পদ্ধতি হচ্ছে Inheritance. কোন class বা object অন্য কোন class বা object এর বৈশিষ্ট অর্জন করে থাকলে সেটিকে বলা হয় Inheritance. একটি parent class এর বৈশিষ্ট্য child class অর্জন করে থাকে।

এনক্যাপসুলেশন (Encapsulation): ইংরেজি শব্দ encapsulation এর অর্থ হলো সকল কিছু ঢেকে রাখা। এটা অনেকটা ক্যাপসুল মেডিসিনের মতই বাইরে আবরণ দিয়ে ভিতরে কিছু একটা রাখা থাকে। অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং এ একটা class আবরণ দিয়ে ভিতরের সবকিছু ঢাকা থাকে।

পলিমরফিজম (Polymorphism): Polymorphism এর অর্থ হলো ভিন্ন অবস্থায় একই object এর ভিন্ন রূপ।

অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং এর জন্য উপরোক্ত ৩টি বিষয় খুবই গুরুত্বপূর্ণ যা নিয়ে আরও আলোচনা থাকবে অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং এর পরবর্তী অধ্যায়ে।

টোকেন

কোন প্রোগ্রামের ক্ষুদ্রতম ইউনিটসমূহকে টোকেন বলে। যেমন

  • কিওয়ার্ড
  • আইডেন্টিফায়ার
  • কনস্ট্যান্ট
  • স্ট্রিং
  • অপারেটর

অবজেক্ট (Object) কী?

Object: আমরা আমাদের চারপাশে যা দেখি সবই Object.

ক্লাস (Class) কী?
Class হলো Object এর blueprint. মূলত ক্লাস হলো এমন এক ধরণের user defined data type যা প্রোগ্রামে বিল্ট ইন ডাটা টাইপের মতো কাজ করে। Object তৈরির extensible প্রোগ্রাম কোড টেমপ্লেট হলো Class. Class এর মধ্যে object এর বৈশিষ্ট্য, ফাংশন ও কনস্ট্রাক্টর থাকে।

ক্লাস ও অবজেক্ট এর একটি উদাহরণ নিচে জাভা প্রোগ্রামে দেয়া হলো:

public class ntrca {
	String name;
	int code;

	public static void main(String[] args) {
		ntrca cse = new ntrca();
		cse.name = "Computer Science";
		cse.code = 431;
		
		System.out.println("Subject name: " + cse.name);
		System.out.println("Subject code: " + cse.code);

	}

}

কনস্ট্রাক্টর (Constructor)

Constructor এমন এক বিশেষ ধরণের মেম্বার ফাংশন যা কোন অবজেক্ট ঘোষণার সময় তার প্রারম্ভিক মান নির্ধারণ এবং মেমরি পরিসর বরাদ্দের জন্য ব্যবহৃত হয়। কোন কনস্ট্রাক্টর ফাংশনের নাম তার ক্লাসের নামের অনুরূপ হয় এবং কনস্ট্রাক্টর ফাংশন ক্লাসের পাবলিক অংশে ঘোষণা করতে হয়।

public class constructor {
	
	constructor(){
		System.out.println("Hello World!!");
	}

	public static void main(String[] args) {		
		constructor cons = new constructor();
	}
}

ডিস্ট্রাক্টর (Destructor)

Destructor এর অর্থ ধ্বংসকারী। Constructor যেমন object ঘোষণার সময় তার ডেটা মেম্বারগুলোর জন্য প্রয়োজনীয় মেমরি পরিসর বরাদ্দ করে, Destructor ফাংশন তেমনিই সেই object এর প্রয়োজন শেষে ডেটা মেম্বারগুলোর জন্য বরাদ্দকৃত মেমরি পরিসর খালি করে দেয়। Destructor ফাংশনের নাম Constructor ফাংশনের নামের অনুরূপ হয়, তবে নামের আগে টিল্ডা (~) চিহ্ন বসে। কোন ক্লাস ঘোষণার সময় constructor ঘোষণার পাশাপাশি destructor ঘোষণা করতে হয়।

class x{
	Public:
	x(); //constructor
	~x(); \\destructor
};

তো এই ছিলো অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং এর বিষয়ে প্রথম পোস্ট এবং ভিডিও। এই অধ্যায়ের বাকিটা দেখানো হবে পরবর্তী পোস্টে। সকল ভিডিও আপডেট পেতে iSudip ইউটিউব চ্যানেলে সাবস্ক্রাইব করুন।

Facebook Comments