উদাহরণ বনাম স্ট্যাটিক বনাম পাইথনে ক্লাস পদ্ধতি: গুরুত্বপূর্ণ পার্থক্য

উদাহরণ বনাম স্ট্যাটিক বনাম পাইথনে ক্লাস পদ্ধতি: গুরুত্বপূর্ণ পার্থক্য

একবার আপনি অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং (OOP) এ প্রবেশ করলে পাইথন পদ্ধতিগুলি প্রায়ই বিভ্রান্তিকর হতে পারে। এই নির্দেশিকা পাইথনে তিনটি প্রধান ধরণের পদ্ধতি জুড়েছে।





পাইথনে 3 ধরণের পদ্ধতি

পাইথনে তিন ধরনের পদ্ধতি রয়েছে: উদাহরণ পদ্ধতি , স্থির পদ্ধতি , এবং ক্লাস পদ্ধতি





পার্থক্যগুলি জানা সবসময় মৌলিক পাইথন স্ক্রিপ্টগুলিকে কোড করার প্রয়োজন হয় না, কিন্তু একবার আপনি ওওপিতে অগ্রসর হলে, পার্থক্যগুলি একটি বড় পরিবর্তন করতে পারে।





যদি আপনি পাইথনে নতুন হন, অথবা কোন কিছু ইনস্টল না করেই শুধু পরীক্ষা করতে চান, তাহলে নিশ্চিত করুন যে আপনি এগুলো পরিদর্শন করেছেন অনলাইন ইন্টারেক্টিভ পাইথন শেল

আমরা শুরু করার আগে: ডেকোরেটর প্যাটার্নগুলি বোঝা

পার্থক্যগুলি দেখার আগে, একটি নকশা প্যাটার্নটি বোঝা গুরুত্বপূর্ণ যা শোভাকর প্যাটার্ন , অথবা কেবল বলা হয় a ডেকোরেটর



ডেকোরেটরগুলো জটিল মনে হলেও ভয় পাওয়ার কিছু নেই। ডেকোরেটরগুলি কেবল ফাংশন। আপনি সেগুলি নিজে লিখতে পারেন, অথবা লাইব্রেরিতে অন্তর্ভুক্ত বা পাইথন স্ট্যান্ডার্ড লাইব্রেরি ব্যবহার করতে পারেন।

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





ডেকোরেটর প্যাটার্ন হল পাইথনের স্ট্যাটিক বা ক্লাস পদ্ধতি নির্ধারণের পছন্দের উপায়। পাইথনে দেখতে কেমন লাগে তা এখানে:

class DecoratorExample:
''' Example Class '''
def __init__(self):
''' Example Setup '''
print('Hello, World!')
@staticmethod
def example_function():
''' This method is decorated! '''
print('I'm a decorated function!')

de = DecoratorExample()
de.example_function()

ডেকোরেটরদের অবিলম্বে একটি ফাংশন বা শ্রেণী ঘোষণার আগে থাকতে হবে। তারা দিয়ে শুরু স্বাক্ষর করুন, এবং স্বাভাবিক পদ্ধতির বিপরীতে, আপনি শেষ পর্যন্ত বন্ধনী স্থাপন করতে হবে না যদি না আপনি আর্গুমেন্ট পাস করছেন।





একাধিক ডেকোরেটর একত্রিত করা, আপনার নিজের লেখা, এবং সেগুলি ক্লাসেও প্রয়োগ করা সম্ভব, কিন্তু এই উদাহরণগুলির জন্য আপনাকে এর কোনটি করতে হবে না।

মুছে ফেলা যাবে না কারণ ফাইলটি ব্যবহার করা হচ্ছে

পাইথনে ইনস্ট্যান্স পদ্ধতি

পাইথন ক্লাসে ইনস্ট্যান্স পদ্ধতিগুলি সবচেয়ে সাধারণ পদ্ধতি। এগুলি বলা হয় কারণ তারা তাদের উদাহরণের অনন্য ডেটা অ্যাক্সেস করতে পারে। যদি আপনার গাড়ি শ্রেণী থেকে তৈরি দুটি বস্তু থাকে, তবে তাদের প্রত্যেকের আলাদা আলাদা বৈশিষ্ট্য থাকতে পারে। তাদের বিভিন্ন রং, ইঞ্জিনের আকার, আসন ইত্যাদি থাকতে পারে।

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

অবশেষে, উদাহরণ পদ্ধতিগুলি সবচেয়ে সাধারণ হিসাবে, কোনও সজ্জার প্রয়োজন নেই। আপনার তৈরি করা যেকোনো পদ্ধতি স্বয়ংক্রিয়ভাবে একটি উদাহরণ পদ্ধতি হিসাবে তৈরি করা হবে, যদি না আপনি অন্যথায় পাইথনকে না বলেন।

এখানে একটি উদাহরণ:

class DecoratorExample:
''' Example Class '''
def __init__(self):
''' Example Setup '''
print('Hello, World!')
self.name = 'Decorator_Example'
def example_function(self):
''' This method is an instance method! '''
print('I'm an instance method!')
print('My name is ' + self.name)

de = DecoratorExample()
de.example_function()

দ্য নাম পরিবর্তনশীল মাধ্যমে অ্যাক্সেস করা হয় স্ব । লক্ষ্য করুন যে কখন example_function বলা হয়, আপনাকে স্বয়ং পাস করতে হবে না --- পাইথন আপনার জন্য এটি করে।

পাইথনে স্ট্যাটিক পদ্ধতি

স্ট্যাটিক পদ্ধতিগুলি এমন পদ্ধতি যা কোনওভাবে একটি শ্রেণীর সাথে সম্পর্কিত, তবে কোনও শ্রেণী-নির্দিষ্ট ডেটা অ্যাক্সেস করার দরকার নেই। আপনাকে ব্যবহার করতে হবে না স্ব , এবং আপনি এমনকি একটি দৃষ্টান্ত তাত্ক্ষণিক করার প্রয়োজন নেই, আপনি কেবল আপনার পদ্ধতি কল করতে পারেন:

class DecoratorExample:
''' Example Class '''
def __init__(self):
''' Example Setup '''
print('Hello, World!')
@staticmethod
def example_function():
''' This method is a static method! '''
print('I'm a static method!')

de = DecoratorExample.example_function()

দ্য atic স্ট্যাটিক পদ্ধতি ডেকোরেটর ব্যবহার করা হয়েছিল পাইথনকে বলার জন্য যে এই পদ্ধতিটি একটি স্ট্যাটিক পদ্ধতি।

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

পাইথনে ক্লাস পদ্ধতি

ক্লাস পদ্ধতি হল তৃতীয় এবং চূড়ান্ত OOP পদ্ধতির ধরন। ক্লাস পদ্ধতি তাদের ক্লাস সম্পর্কে জানে। তারা নির্দিষ্ট উদাহরণ ডেটা অ্যাক্সেস করতে পারে না, তবে তারা অন্যান্য স্ট্যাটিক পদ্ধতিতে কল করতে পারে।

ক্লাস পদ্ধতি প্রয়োজন হয় না স্ব একটি যুক্তি হিসাবে, কিন্তু তাদের একটি প্যারামিটার বলা প্রয়োজন cls । এই জন্য দাঁড়িয়েছে শ্রেণী , এবং নিজের মতো, পাইথন দ্বারা স্বয়ংক্রিয়ভাবে প্রবেশ করে।

ক্লাস পদ্ধতি ব্যবহার করে তৈরি করা হয় lass ক্লাস পদ্ধতি ডেকোরেটর

class DecoratorExample:
''' Example Class '''
def __init__(self):
''' Example Setup '''
print('Hello, World!')
@classmethod
def example_function(cls):
''' This method is a class method! '''
print('I'm a class method!')
cls.some_other_function()
@staticmethod
def some_other_function():
print('Hello!')

de = DecoratorExample()
de.example_function()

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

প্রতিটি পদ্ধতি টাইপ কখন ব্যবহার করবেন

এটি পাইথনের পদ্ধতিগুলির মধ্যে বেছে নেওয়া একটি কঠিন এবং ভয়ঙ্কর সিদ্ধান্ত বলে মনে হতে পারে, তবে আপনি শীঘ্রই কিছুটা অনুশীলনের সাথে এটির ঝুলি পাবেন।

আমি বিজ্ঞপ্তি পাচ্ছি না কেন?

এমনকি যদি আপনি শুধুমাত্র মজা করার জন্য ক্ষুদ্র স্ক্রিপ্ট লিখেন, তবে পাইথনের আরেকটি OOP বৈশিষ্ট্য শেখা একটি দুর্দান্ত দক্ষতা, এবং আপনার কোডকে সমস্যা সমাধানের জন্য সহজ এবং ভবিষ্যতে পুনuseব্যবহার করা সহজ করতে সাহায্য করতে পারে।

সংক্ষেপে:

  1. তাত্ক্ষণিক পদ্ধতি: সবচেয়ে সাধারণ পদ্ধতির ধরন। প্রতিটি উদাহরণের জন্য অনন্য তথ্য এবং বৈশিষ্ট্য অ্যাক্সেস করতে সক্ষম।
  2. স্ট্যাটিক পদ্ধতি: ক্লাসে অন্য কিছু অ্যাক্সেস করা যাবে না। সম্পূর্ণ স্বয়ংসম্পূর্ণ কোড।
  3. ক্লাস পদ্ধতি: ক্লাসে সীমিত পদ্ধতিতে প্রবেশ করতে পারে। ক্লাস নির্দিষ্ট বিবরণ পরিবর্তন করতে পারেন।

যদি এই টিউটোরিয়ালটি একটু উন্নত ছিল, অথবা আপনি যা খুঁজছিলেন তা পুরোপুরি নয়, তাহলে পাইথন শিক্ষানবিশ থেকে প্রো -এ যাওয়ার জন্য এই কোর্সগুলি কেন দেখুন না? এই 5 টি ওয়েবসাইট পাইথন নতুনদের জন্যও দারুণ। আপনি যদি পাইথনের শারীরিক, বাস্তব জগতে ব্যবহার করতে চান, কিন্তু রাস্পবেরি পাই থেকে বিরক্ত হন, তাহলে আমাদের গাইড সম্পর্কে পাইথনের সাহায্যে আরডুইনো নিয়ন্ত্রণ করা ?

শেয়ার করুন শেয়ার করুন টুইট ইমেইল কিভাবে কমান্ড প্রম্পট ব্যবহার করে আপনার উইন্ডোজ পিসি পরিষ্কার করবেন

যদি আপনার উইন্ডোজ পিসি স্টোরেজ স্পেস কম থাকে, এই দ্রুত কমান্ড প্রম্পট ইউটিলিটি ব্যবহার করে জাঙ্ক পরিষ্কার করুন।

পরবর্তী পড়ুন
সম্পর্কিত বিষয়
  • প্রোগ্রামিং
  • প্রোগ্রামিং
  • পাইথন
লেখক সম্পর্কে জো কোবার্ন(136 নিবন্ধ প্রকাশিত)

জো যুক্তরাজ্যের লিংকন বিশ্ববিদ্যালয় থেকে কম্পিউটার বিজ্ঞানে স্নাতক। তিনি একজন পেশাদার সফটওয়্যার ডেভেলপার, এবং যখন তিনি ড্রোন উড়াচ্ছেন না বা সঙ্গীত লিখছেন না, তখন তাকে প্রায়ই ফটো তুলতে বা ভিডিও তৈরি করতে দেখা যায়।

জো কোবার্ন থেকে আরো

আমাদের নিউজলেটার সদস্যতা

প্রযুক্তি টিপস, রিভিউ, ফ্রি ইবুক এবং এক্সক্লুসিভ ডিলের জন্য আমাদের নিউজলেটারে যোগ দিন!

সাবস্ক্রাইব করতে এখানে ক্লিক করুন