তাঁর 'ক্লিন আর্কিটেকচার' বইয়ে আঙ্কেল বব বলেছেন যে উপস্থাপকের যে তথ্যটি পাওয়া যায় সেটিকে এমন কিছুতে রাখা উচিত যা তাকে 'ভিউ মডেল' বলে।
এটি কি মডেল-ভিউ-ভিউমোডেল (এমভিভিএম) ডিজাইন প্যাটার্ন থেকে 'ভিউমোডেল' হিসাবে একই জিনিস বা এটি কোনও সাধারণ ডেটা ট্রান্সফার অবজেক্ট (ডিটিও)?
এটি যদি কোনও সাধারণ ডিটিও না হয় তবে এটি দেখার সাথে কীভাবে সম্পর্কিত? দর্শনটি কি পর্যবেক্ষক সম্পর্কের মাধ্যমে এটি থেকে আপডেটগুলি পেতে পারে?
আমার ধারণা এটি এমভিভিএমের ভিউমোডেলের মতোই, কারণ তাঁর বইয়ের রবিবার মার্টিন বলেছেন:
[উপস্থাপকের] কাজটি হ'ল অ্যাপ্লিকেশন থেকে ডেটা গ্রহণ করা এবং উপস্থাপনের জন্য এটি বিন্যাস করা যাতে ভিউ সহজেই স্ক্রিনে স্থানান্তর করতে পারে। উদাহরণস্বরূপ, যদি অ্যাপ্লিকেশনটি কোনও ক্ষেত্রে প্রদর্শিত একটি তারিখ চায়, তবে এটি উপস্থাপকের একটি তারিখ অবজেক্ট সরবরাহ করবে। উপস্থাপক তারপরে সেই ডেটাটিকে উপযুক্ত স্ট্রিংয়ে ফর্ম্যাট করে ভিউ মডেল নামে একটি সাধারণ ডেটা স্ট্রাকচারে রাখবেন, যেখানে ভিউ এটি সন্ধান করতে পারে।
এর দ্বারা বোঝা যায় যে ভিউটি কোনওভাবে ভিউমোডেলের সাথে সংযুক্ত রয়েছে, উদাহরণস্বরূপ এটি কোনও ফাংশন আর্গুমেন্ট হিসাবে সহজভাবে গ্রহণ করার বিপরীতে (যেমন একটি ডিটিওর ক্ষেত্রে হবে)।
আরেকটা যে-কারণে আমি এই মনে করি যদি আপনি ইমেজ তাকান, উপস্থাপক দর্শন মডেল ব্যবহার করে, কিন্তু কারণ না দেখুন। যেখানে উপস্থাপক আউটপুট সীমানা এবং আউটপুট ডেটা ডিটিও উভয়ই ব্যবহার করেন।
এটি যদি কোনও ডিটিও না হয় বা এমভিভিএম থেকে ভিউমোডেল না হয়, তবে দয়া করে এটি কী তা বিস্তারিতভাবে বর্ণনা করুন।
ViewModel
জন্য মোড়কযুক্ত Controller
, Presenter
এবং ViewModel
চাচা ববসের ক্লিন আর্কিটেকচারে।
Controller
-> ICommand
এবং Presenter
-> হতে পারে data-binding mechanism
।