এমভিসি তে কন্ট্রোলার এবং এমভিভিএম-এ ভিউমোডেলের মধ্যে পার্থক্য কী?


21

আমি এমভিসি এবং এমভিভিএমের মধ্যে পার্থক্যটি পরিষ্কারভাবে দেখতে পাচ্ছি না। আমি মনে করি একটি ভিউমোডেলে কমান্ডটি ঠিক একটি নিয়ামকের মধ্যে অ্যাকশন পদ্ধতির মতো। এবং কন্ট্রোলার এবং ভিউমোডেল উভয়ই ডেটা বাইন্ডিংয়ের মাধ্যমে মডেলের স্থিতি সংশোধন করার পরে নিজেকে রিফ্রেশ করার জন্য ভিউকে অবহিত করবে। দুটি প্যাটার্নের মধ্যে প্রধান পার্থক্য কী?

উত্তর:


25

নিয়ামক এবং ভিউমোডেল বিভিন্ন উপায়ে পৃথক।

এমভিসিতে নিয়ামক দর্শন জানেন, এটি দর্শন পরিবর্তন করতে পারে। এটি মডেলকেও জানে এবং এটি কল করতে পারে। এমভিভিএম-এ একটি ভিউমোডেল ভিউয়ের একটি বিমূর্ত উপস্থাপনা এবং কংক্রিট ইউআই জানেন না, এটি মডেলটিকে এমনভাবে আবৃত করে যাতে এটি পছন্দসই হিসাবে প্রদর্শিত হয়।

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

তবে তাদের কিছু মিল রয়েছে। উভয় নিদর্শন, দেখুন একটি পর্যবেক্ষক । শাস্ত্রীয় এমভিসিতে, ভিউটি মডেলের পর্যবেক্ষক, এমভিভিএম-এ এটি ভিউমোডেলের পর্যবেক্ষক।

উভয় নিদর্শন উদ্বেগ পৃথকীকরণ বোঝানো হয়। এমভিভিএম মূলত লক্ষ্যটির একটি বিমূর্ততা সরবরাহ করা, ব্যবহারের ক্ষেত্রে ইউআই প্রযুক্তি থেকে সম্পূর্ণ স্বতন্ত্র provide এমভিসি এতদূর যায় না। এটি প্রাথমিক ফোকাসটি উদ্বেগের বিভাজনকে কেন্দ্র করে, যাতে আপনি ব্যবসায়িক যুক্তি (মডেল )টিকে দৃষ্টিভঙ্গিতে না ফেলে।

আপনি আমার এই উত্তরটিও অনুরূপ প্রশ্নের সহায়ক বলে মনে করতে পারেন।

শেষ অবধি, আমার বলা উচিত যে উভয় নিদর্শন একই পরিবারের অন্তর্ভুক্ত। এমভিপি, যার মধ্যে এমভিভিএম বংশধর, এমভিসি-র এক ভাইবোন। আপনি যদি আরও জানতে চান মার্টিন ফাউলারের ওয়েবসাইটটিতে এই লিঙ্কটি অনুসরণ করুন , তিনি প্রতিটি বিষয় বিস্তারিতভাবে ব্যাখ্যা করেন।


আপনি কি মনে করেন না যে এই মডেল-ভিউ আর্কিটেকচারগুলি এগুলি প্রয়োগ করে লোকেরা সর্বোত্তমভাবে বুঝতে পারে। আমি বিশ্বাস করি এটি বিকাশকারীদের পক্ষে পছন্দের বিষয়। কেউ একটু ওভার-হেড (এমভিভিএম ক্ষেত্রে) দিয়ে ভিউ সম্পর্কে মোট বিমূর্ততা চান কিনা তার উপর নির্ভর করে কেউ এমভিসি বা এমভিভিএম চয়ন করে।
পঙ্কজ উপাধ্যায়

@ পঙ্কজ উপাধ্যায়: আপনার কোনটি ব্যবহার করা উচিত তা আপনার প্রয়োজনীয়তা এবং প্রযুক্তির পছন্দ এবং আপনার প্ল্যাটফর্মের আইডিসিএনক্র্যাসির উপর নির্ভর করে।
ফ্যালকন

আমি বিশ্বাস করি যে এমভিসি আর্কিটেকচার যে কোনও কিছুর জন্য যথেষ্ট ভাল, তবে এটি হতে পারে কারণ আমি এমন কোনও সমস্যার মুখোমুখি হইনি যার জন্য বিশেষত এমভিভিএম প্রয়োজন। আইএমও, আপনার অবশ্যই দৃশ্যের উপর কিছুটা নিয়ন্ত্রণ থাকা দরকার কারণ একেবারে looseিলে making
ালা তৈরি করা

1
@ পঙ্কজ উপাধ্যায়: আপনি যদি বিভিন্ন ইউআই প্রযুক্তির জন্য একই যুক্তিটি ব্যবহার করতে চান তবে এমভিপি আরও উন্নত। আমি মনে করি না যে অগত্যা এই ভিউটিতে আপনার কিছু নিয়ন্ত্রণ দরকার। এটি সম্পূর্ণ স্বাধীন হতে পারে এবং আপনি আরও ভাল ভিউমোডেলগুলি পরীক্ষা করতে পারেন - আরও ভাল না হলে। প্রকল্পটির কাজ আরও ভালভাবে বিভাজন করা যায় বলে আরও ভাল বিভাজন ডিজাইনারদেরও উপকৃত করে।
ফ্যালকন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.