পাইথনে ক্লাস
এই প্রবন্ধে পাইথনে ক্লাস সম্পর্কে ব্যাখ্যা করা হয়েছে।
YouTube Video
পাইথনে ক্লাস
পাইথনে, ক্লাস হ'ল অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং (OOP)-এর একটি মূল ধারণা, যা ডেটা গুছিয়ে রাখার এবং সেই ডেটার উপর কার্যকর পদ্ধতির জন্য একটি টেমপ্লেট সংজ্ঞায়িত করে। ক্লাস ব্যবহার করে, আপনি ডেটা কাঠামো তৈরি করতে এবং সংশ্লিষ্ট আচরণ একত্রিত করতে পারেন।
ক্লাসের মৌলিক বিষয়সমূহ
পাইথনে একটি ক্লাস সংজ্ঞায়িত করতে, class
কীওয়ার্ডটি ব্যবহার করুন। নিচে একটি মৌলিক ক্লাসের গঠন এবং ব্যবহার দেখানো হয়েছে।
1# Class definition
2class MyClass:
3 # Constructor (initialization method)
4 def __init__(self, attribute):
5 self.attribute = attribute
6
7 # Method (member function)
8 def display_attribute(self):
9 print(self.attribute)
10
11# Creating an object
12obj = MyClass("Hello, World!")
13obj.display_attribute() # Outputs "Hello, World!"
ক্লাসের উপাদানসমূহ
অ্যাট্রিবিউটসমূহ
একটি ক্লাসের অ্যাট্রিবিউটগুলি সেই ডেটা বা অবস্থা নির্দেশ করে যা একটি অবজেক্ট ধরে রাখে। উপরে দৃষ্টান্তে, attribute
একটি ইনস্ট্যান্স অ্যাট্রিবিউট।
পদ্ধতিসমূহ
মেথড হল ফাংশন যা একটি ক্লাসের ভিতরে সংজ্ঞায়িত হয় এবং একটি অবজেক্টের উপর কাজ নির্দিষ্ট করে। উদাহরণস্বরূপ, উপরে দেখানো display_attribute
মেথড।
কন্সট্রাক্টর
__init__
মেথডটিকে কন্সট্রাক্টর বলা হয় এবং এটি একটি অবজেক্ট তৈরির সময় কার্যকর হয়। এটি ইনস্ট্যান্সকে আরম্ভ করে।
অবজেক্ট তৈরি এবং পরিচালনা করা
একটি ক্লাস থেকে একটি অবজেক্ট তৈরি করাকে ইনস্ট্যানসিয়েশন বলা হয়। উপরে দৃষ্টান্তে, MyClass
কে ইনস্ট্যান্সিয়েট করে obj
তৈরি করা হয়েছে। তৈরি করা অবজেক্ট দিয়ে, আপনি ক্লাসে সংজ্ঞায়িত মেথড কল করতে বা অ্যাট্রিবিউট অ্যাক্সেস করতে পারেন।
ইনহেরিটেন্স
ক্লাসগুলি ইনহেরিটেন্স সমর্থন করে, যা অন্য ক্লাস (প্যারেন্ট বা বেস ক্লাস) থেকে অ্যাট্রিবিউট এবং মেথড উত্তরাধিকারসূত্রে পাওয়ার সুযোগ করে। একটি নতুন ক্লাস (সাবক্লাস) এর প্যারেন্ট ক্লাসকে সম্প্রসারিত করে কার্যকারিতা যোগ করতে পারে।
1# Parent class
2class Animal:
3 def speak(self):
4 print("Some sound")
5
6# Child class
7class Dog(Animal):
8 def speak(self):
9 print("Bark!")
10
11# Instantiation and method call
12dog = Dog()
13dog.speak() # Outputs "Bark!"
এইভাবে, পাইথন ক্লাসগুলি ডেটা এবং প্রক্রিয়াগুলিকে যৌক্তিকভাবে যুক্ত করার একটি শক্তিশালী মাধ্যম। অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং এর অন্যান্য উপাদান যেমন বহুরুপতা (polymorphism) এবং সংক্ষেপন (encapsulation), ক্লাসের মাধ্যমে বাস্তবায়ন করা যেতে পারে।
পাইথনের মডিউলসমূহ
পাইথনের একটি মডিউল হলো পাইথন কোড সংগঠিত এবং পুনরায় ব্যবহার করার একটি ইউনিট। একটি মডিউল হচ্ছে একটি ফাইল যার ভিতরে থাকা পাইথন কোড, ফাংশন, ক্লাস, ভেরিয়েবল ইত্যাদি অন্যান্য পাইথন কোড দ্বারা আমদানি করে ব্যবহার করা যায়। মডিউল ব্যবহারের মাধ্যমে কোড পুনরায় ব্যবহারের ক্ষমতা উন্নত হয় এবং প্রোগ্রামগুলি আরও সংগঠিত এবং রক্ষণাবেক্ষণের জন্য সহজ হয়ে ওঠে।
একটি মডিউল তৈরি করা
একটি মডিউল তৈরি করতে, পাইথন কোডসহ একটি ফাইল সংরক্ষণ করলেই এটি তৈরি হয়ে যায়। যেমন, নিম্নলিখিত বিষয়বস্তু সহ একটি ফাইল my_module.py
হিসাবে সংরক্ষণ করলে এটি একটি মডিউল হয়ে যায়।
1def greet(name):
2 return f"Hello, {name}!"
3
4pi = 3.14159
একটি মডিউল আমদানি করা
তৈরি করা একটি মডিউল অন্য ফাইলে ব্যবহার করতে, import
স্টেটমেন্ট ব্যবহার করা হয়।
1import my_module
2
3# Using functions and variables from my_module
4print(my_module.greet("Alice"))
5print(my_module.pi)
আপনি নির্দিষ্ট ফাংশন বা ভেরিয়েবলও ইমপোর্ট করতে পারেন।
1from my_module import greet, pi
2
3# Names can be used directly.
4print(greet("Bob"))
5print(pi)
মডিউল এর উপনাম
মডিউল আমদানি করার সময় আপনি একটি উপনাম বরাদ্দ করতে পারেন। এটি কোড লেখার সময় মডিউল অ্যাক্সেস করা সহজ করে তোলে।
1import my_module as mm
2
3print(mm.greet("Charlie"))
4print(mm.pi)
স্ট্যান্ডার্ড লাইব্রেরি মডিউলসমূহ
পাইথন অনেক ধরণের বিল্ট-ইন স্ট্যান্ডার্ড লাইব্রেরি মডিউল সরবরাহ করে। আপনি math
মডিউল বা os
মডিউলের মতো মডিউলগুলি ইমপোর্ট এবং ব্যবহার করতে পারেন।
1import math
2
3print(math.sqrt(16))
4print(math.pi)
প্যাকেজসমূহ
একটি প্যাকেজ হলো ডিরেক্টরি কাঠামোতে সংগঠিত একাধিক মডিউলের একটি সংগ্রহ। প্যাকেজ ব্যবহার করার মাধ্যমে অধিক কোডের ভাল সংগঠন হয় এবং বৃহৎ পরিসরের অ্যাপ্লিকেশনগুলির সহায়তা হয়।
পাইথনে মডিউল এবং প্যাকেজ ব্যবহারের মাধ্যমে আপনি আরও দক্ষ এবং সংগঠিত প্রোগ্রাম লিখতে পারেন।
আপনি আমাদের ইউটিউব চ্যানেলে ভিজ্যুয়াল স্টুডিও কোড ব্যবহার করে উপরের নিবন্ধটি অনুসরণ করতে পারেন। দয়া করে ইউটিউব চ্যানেলটিও দেখুন।