এনক্যাপসুলেশন একটি প্রোগ্রামিং প্রিন্সিপাল যা ক্লাসের মাধ্যমে অবজেক্টের মধ্যে তথ্য এবং কার্যাবলী একত্রিত করার একটি পদ্ধতি। এটি প্রোগ্রামে তথ্য গোপন করার এবং তা পরিচালনার জন্য একটি গুরুত্বপূর্ণ ধারণা। মূল উদ্দেশ্য হলো, অবজেক্টের অবকাঠামোকে শক্তিশালী করা এবং অবজেক্টের আভ্যন্তরীণ ডেটাকে সরাসরি অ্যাক্সেস সীমিত করা।
উদাহরণ কোড:
# ক্লাসের মধ্যে এনক্যাপসুলেশন ব্যবহার
class BankAccount:
def __init__(self, account_number, balance):
self.__account_number = account_number # এনক্যাপসুলেটেড তথ্য
self.__balance = balance # এনক্যাপসুলেটেড তথ্য
# getter for account_number
def get_account_number(self):
return self.__account_number
# setter for balance
def set_balance(self, amount):
if amount >= 0:
self.__balance = amount
else:
print("Amount cannot be negative.")
# method to check balance
def check_balance(self):
print(f"Account Balance: {self.__balance}")
# অবজেক্ট তৈরি
account = BankAccount('123456789', 1000)
print("Account Number:", account.get_account_number()) # getter ব্যবহার
account.set_balance(1500) # setter ব্যবহার করে ব্যালেন্স আপডেট
account.check_balance() # ব্যালেন্স দেখানো হচ্ছে
ব্যাখ্যা:
আউটপুট:
Account Number: 123456789
Account Balance: 1500
ডেটার গোপনীয়তা নিশ্চিত করা যায়।
ক্লাসের মধ্য থেকে নিয়ন্ত্রণ এবং প্রক্রিয়াগুলি পরিচালিত হয়।
নিরাপত্তা বৃদ্ধি পায় কারণ অপ্রয়োজনীয় তথ্য বা কার্যাবলী বাইরে থেকে পরিবর্তন করা সম্ভব হয় না।
প্রোগ্রামটি আরও সুবিধাজনক এবং সহজবোধ্য হয়ে ওঠে।