Table of Contents
আধুনিক সফ্টওয়্যার অ্যাপ্লিকেশনের জন্য নমনীয় সূচনাবার্তা ব্যবস্থা তৈরি করা অপরিহার্য । সফটওয়্যার ইঞ্জিনিয়ারিংর নকশা, যা Python সিস্টেম প্রয়োগের জন্য একটি চমৎকার সমাধান সরবরাহ করে । এর ফলে অন্যান্য বস্তুর সাথে সংযুক্ত বস্তু যেমন, অভ্যুত্থান এবং স্বল্পতা বৃদ্ধি করা, সেগুলোকে দুর করা এবং সেগুলোকে পরিব্যক্তিক হিসেবে দেখা যায় ।
অবজারভার প্যাটার্ন বুঝতে পারা
সার্ভার (ব্যাপারেন্ট) বিন্যাস একটি বস্তুর মধ্যে একটি- বহু-র বেশি নির্ভরতার কথা উল্লেখ করে । যখন কোন বস্তুর অবস্থা পরিবর্তন করা হয়, এর সকল নির্ভরশীল (অন্তত্র) । এই বিন্যাসকে নির্দিষ্ট করে জানানো হয় বিভিন্ন ইভেন্ট ব্যবস্থাপনা পদ্ধতি, যেমন, বিভিন্ন বস্তুর প্রতিক্রিয়া জানানোর জন্য ।
পাইথন-এ ব্যবহারযোগ্য বিন্যাসের সংকলন
এই তালিকা পর্যবেক্ষকদের তালিকা এবং তাদের সঙ্গে সংযুক্ত করার বিভিন্ন পদ্ধতি পরিচালনা করে থাকে এবং তাদের সতর্ক করে দেয় ।
বিষয় তৈরি করা হচ্ছে
এই বিষয় শ্রেণী পর্যবেক্ষকদের তালিকা তৈরি করে এবং তাদের জানানো এবং তাদের জানানোর পদ্ধতি সরবরাহ করে।
class Subject:
def __init__(self):
self.observers = []
def attach(self, observer):
self.observers.append(observer)
def detach(self, observer):
self.observers.remove(observer)
def notify(self, message):
for observer in self.observers:
observer.update(message)
সার্ভার কাঠামো তৈরি করা হচ্ছে
বিজ্ঞপ্তি প্রদানের উদ্দেশ্যেজার দ্বারা সিস্টেমের আপডেট ব্যবস্থা প্রয়োগ করার জন্য মান TRUE (সত্য) নির্ধারণ করুন।
class Observer:
def update(self, message):
raise NotImplementedError("Subclass must implement update method")
অবনিতকরণ সার্ভার
নির্বাচনী পর্যবেক্ষকরা বিভিন্ন প্রতিক্রিয়া উল্লেখ করেছেন যেমন একটি বার্তা ছাপানো বা ব্যবহারকারীর ইন্টারফেস আপডেট করা।
class EmailNotification(Observer):
def update(self, message):
print(f"Sending email notification: {message}")
class LogNotification(Observer):
def update(self, message):
print(f"Logging message: {message}")
বিজ্ঞপ্তির সিস্টেম ব্যবহার
সিস্টেম ব্যবহার করতে, একটি বিষয়বস্তু তৈরি, পর্যবেক্ষক তৈরি, এবং পাঠানোর ক্ষমতা তৈরি করুন । এর ফলে পর্যবেক্ষকদের এটি চালু বা অপসারণ করতে পারবেন ।
# Create subject
notification_center = Subject()
# Create observers
email_alert = EmailNotification()
log_alert = LogNotification()
# Attach observers
notification_center.attach(email_alert)
notification_center.attach(log_alert)
# Send a notification
notification_center.notify("New message received!")
এই বিন্যাস নিশ্চিত করে যে সিস্টেমের সূচনাবার্তা নমনীয় এবং সহজে পরিদশতিযোগ্য । উপস্থিত কোড পরিবর্তন না করে আপনি নতুন ঘোষণা ধরনের ধরন যোগ করতে পারেন, উন্মুক্ত সফটওয়্যার নকশার ক্ষেত্রে প্রযোজ্য।