Document এবং View এর মধ্যে সম্পর্ক

Document/View আর্কিটেকচার (Document/View Architecture) - এমএফসি (MFC) - Microsoft Technologies

368

MFC (Microsoft Foundation Classes) এর অ্যাপ্লিকেশন ডিজাইনে Document এবং View দুটি প্রধান কম্পোনেন্ট, যেগুলি অ্যাপ্লিকেশন ডেটা এবং ব্যবহারকারীর ইন্টারফেসের মধ্যে যোগাযোগ স্থাপন করে। MFC এর Document/View Architecture একটি খুবই শক্তিশালী ডিজাইন প্যাটার্ন, যা ডেটা মডেল এবং ইউজার ইন্টারফেসকে আলাদা রাখে, ফলে অ্যাপ্লিকেশনের স্কেলেবিলিটি এবং রক্ষণাবেক্ষণ সহজ হয়।


ডকুমেন্ট (Document)

Document হল অ্যাপ্লিকেশনের ডেটা বা কনটেন্ট স্টোর করার জায়গা। এটি ব্যবহারকারীর ইন্টারঅ্যাকশন বা ডেটা এন্ট্রি থেকে আলাদা থাকে। ডকুমেন্ট ক্লাসটি সাধারণত অ্যাপ্লিকেশনের মূল ডেটা এবং কনটেন্ট সঞ্চয় করে এবং এটি MFC Document Class এর মাধ্যমে পরিচালিত হয়। ডকুমেন্টের মধ্যে থাকা ডেটা পরবর্তীতে ব্যবহারকারীকে View এর মাধ্যমে প্রদর্শন করা হয়।

ডকুমেন্টের মধ্যে সাধারণত নিম্নলিখিত ধরনের ডেটা থাকে:

  • ফাইলের কনটেন্ট (টেক্সট, চিত্র, সংখ্যা ইত্যাদি)
  • অ্যাপ্লিকেশনের দ্বারা পরিচালিত মডেল ডেটা
  • ডেটাবেস সংযোগ ও ফলাফল

Code Example:

class CMyDocument : public CDocument
{
protected:
    CMyDocument();
    DECLARE_DYNCREATE(CMyDocument)
public:
    virtual BOOL OnNewDocument();
    virtual void Serialize(CArchive& ar);
};

এখানে, CMyDocument একটি ডকুমেন্ট ক্লাস, যা Serialize ফাংশনের মাধ্যমে ডেটা সঞ্চয় এবং লোড করে।


ভিউ (View)

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

MFC তে একটি অ্যাপ্লিকেশন সাধারণত Multiple Views এবং Single View সমর্থন করে, যার মাধ্যমে একটি ডকুমেন্ট একাধিক ভিউতে প্রদর্শিত হতে পারে।

Code Example:

class CMyView : public CView
{
protected:
    CMyView();
    DECLARE_DYNCREATE(CMyView)
public:
    virtual void OnDraw(CDC* pDC);
};

এখানে, CMyView হল একটি ভিউ ক্লাস যা OnDraw ফাংশনের মাধ্যমে ডকুমেন্টের ডেটা গ্রাফিকালি অথবা টেক্সট ফরম্যাটে প্রদর্শন করে।


ডকুমেন্ট এবং ভিউ এর মধ্যে সম্পর্ক

Document এবং View এর মধ্যে একটি শক্তিশালী সম্পর্ক আছে। ডকুমেন্টের ডেটা পরিবর্তন হলে, সেই পরিবর্তনগুলি স্বয়ংক্রিয়ভাবে ভিউতে প্রদর্শিত হয়। MFC তে Document এবং View এর মধ্যে সম্পর্ক Observer Pattern এর মতো কাজ করে, যেখানে View ডকুমেন্টের পরিবর্তনগুলো "observe" (অবজার্ভ) করে এবং ডকুমেন্ট আপডেট হলে ভিউ তা রিফ্রেশ করে।

  1. ডকুমেন্ট থেকে ভিউতে ডেটা ট্রান্সফার:
    ডকুমেন্টের ডেটা একটি OnDraw ফাংশনের মাধ্যমে ভিউতে পাঠানো হয়। ভিউটি তখন ডেটা রেন্ডার বা প্রদর্শন করার জন্য পদ্ধতি ব্যবহার করে।
  2. ভিউ থেকে ডকুমেন্টে ডেটা আপডেট:
    যখন ব্যবহারকারী কোনো ভিউতে কোনো পরিবর্তন করেন, সেই পরিবর্তনটি ডকুমেন্টে আপডেট হয়। উদাহরণস্বরূপ, ব্যবহারকারী কোনো টেক্সট বা মান এডিট করলে সেটি ডকুমেন্টের ডেটা পরিবর্তন করে।
  3. ডকুমেন্টের পরিবর্তন ভিউতে রিফ্লেক্ট হয়:
    যখন ডকুমেন্টের ডেটা পরিবর্তন হয়, তখন ভিউ সেটি অবহিত হয়ে Invalidate বা Update মেথড দিয়ে ভিউটি রিফ্রেশ করে, যাতে নতুন ডেটা প্রদর্শিত হয়।

সারাংশ

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

Content added By
Promotion

Are you sure to start over?

Loading...