কম্পিউটার টিউটোরিয়াল

পাইথনে অনন্য অবজেক্ট অন্য মডিউলে অ্যাক্সেসIBLE করা (সিঙ্গলটন প্যাটার্ন)

সমস্যা

একটি অবজেক্ট ইনস্ট্যানশিয়েট করে একাধিক মডিউলে শেয়ার করতে চাইলে (সিঙ্গলটন প্যাটার্ন)।

পদ্ধতি ১: মডিউল অ্যাট্রিবিউট হিসেবে অ্যাসাইন

# main.py
import moduleB
myobj = MyClass()
moduleB.myobj = myobj  # মডিউল B-এ গ্লোবাল হিসেবে যোগ

# moduleB.py
def use_obj():
    print(myobj.value)  # সরাসরি অ্যাক্সেস

পদ্ধতি ২: প্যারামিটার হিসেবে পাস করা (বेहतर)

# moduleB.py
def myfunc(obj):
    print(obj.value)

# main.py
import moduleB
myobj = MyClass()
moduleB.myfunc(myobj)  # নির্ভরতা স্পষ্ট

তুলনা

সেরা অভ্যাস: ডিপেন্ডেন্সি ইনজেকশন

প্যারামিটার পাস করুন (পদ্ধতি ২)। এটি কোড মডুলার, টেস্টেবল এবং বোঝা সহজ রাখে। গ্লোবাল স্টেট এড়িয়ে চলুন।

  1. পাইথন মডিউল: মডিউল কীভাবে তৈরি করবেন

  2. পাইথনে লগ হিস্টোগ্রাম তৈরি করা

  3. পাইথন মডিউল আনলোড (রিলোড) করা

  4. পাইথন মডিউল কীভাবে কাজ করে?

কপিরাইট © https://bd.wsxdn.com সমস্ত অধিকার সংরক্ষিত
পদ্ধতিফায়দানuksi
মডিউল অ্যাট্রিবিউটসহজ, গ্লোবাল অ্যাক্সেসহিডেন ডিপেন্ডেন্সি, টেস্টিং কঠিন
প্যারামিটার পাসস্পষ্ট নির্ভরতা, টেস্টিং সহজপ্রতিটি কলে পাস করতে হয়