এমভিপি এবং পরিষ্কার আর্কিটেকচারের মধ্যে পার্থক্য কী


13

প্রশ্নটি স্ব-বর্ণনামূলক, কেবল আমার চিন্তাগুলি যুক্ত করার জন্য:
আমি যতদূর পড়েছি, ক্লিন আর্কে উপস্থাপনা স্তরটির এমভিপি-তে এমভি-র মতো একই দায়িত্ব রয়েছে।

কীভাবে একজন অন্যটির পরিবর্তে একটি প্যাটার্ন চয়ন করবেন?


এমভিপি পরিষ্কার আর্কিটেকচারের অংশ, এই নিবন্ধটি androidwave.com/android-mvp-architecture-for-beginners-demo-app
সূর্য প্রকাশ কুশাহাহ

উত্তর:


15

বব মার্টিন যাকে " ক্লিন আর্কিটেকচার " বলেছিলেন এটি আরও একটি "মেটা আর্কিটেকচার", স্তরযুক্ত আর্কিটেকচার তৈরির জন্য একটি উচ্চ স্তরের নির্দেশিকা। এর মতো কিছু বলে না

"অবশ্যই একটি মডেল স্তর, একটি দৃশ্য স্তর এবং উপস্থাপনা স্তর থাকতে হবে এবং সেগুলি অবশ্যই এমভিপি ব্যবহার করে প্রয়োগ করা উচিত ",

এতে স্তরগুলির জন্য কেবলমাত্র আরও সাধারণ নিয়ম রয়েছে যেমন "নির্ভরতা অবশ্যই বাইরের চেনাশোনাগুলি থেকে অভ্যন্তরীণ বৃত্তগুলিতে যেতে হবে, বিপরীতে নয়" । এবং যেহেতু এমভিপি-তে, ভিউ (= ইউআই) উপস্থাপককে জানতে পারে, তবে উপস্থাপক একটি ভিউ থেকে একটি ইন্টারফেসের মাধ্যমে ডিউপলড হয়ে গেছে, এমভিপি এই সম্ভাব্য সমাধানগুলির একটি মাত্র যা এই নিয়মটি পূর্ণ করে।

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


আমি যদি এমভিপি প্যাটার্নটি অনুসরণ করি তবে কি গ্যারান্টিযুক্ত যে আমি পরিষ্কার আর্কিটেকচার বিধি লঙ্ঘন করি নি?
মেহরদাদ শোকরি

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