Hierarchical model–view–controller
হায়ারার্কিকাল মডেল-ভিউ-কন্ট্রোলার (এইচএমভিসি) একটি সফ্টওয়্যার স্থাপত্য প্যাটার্ন, যা উপস্থাপনা-বিমূর্ততা-নিয়ন্ত্রণের (পিএসি) অনুরূপ মডেল-ভিউ-কন্ট্রোলারের (এমভিসি) একটি প্রকরণ, যা 2000 সালে জাভা ওয়ার্ল্ড ম্যাগাজিনে একটি নিবন্ধে প্রকাশিত হয়েছিল, লেখকরা স্পষ্টতই পিএসি সম্পর্কে অবগত ছিলেন না, যা 13 বছর আগে প্রকাশিত হয়েছিল। নিয়ন্ত্রকের কিছু তদারকি রয়েছে যে এটি প্রথমে মডেল এবং তারপরে ভিউ নির্বাচন করে, নিয়ন্ত্রকের দ্বারা একটি অনুমোদন প্রক্রিয়া উপলব্ধি করে। মডেলটি ভিউকে সরাসরি ডেটা উৎস অ্যাক্সেস করতে বাধা দেয়। উদাহরণ এইচ. এম. ভি. সি স্থাপত্য ব্যবহারের সবচেয়ে বড় ব্যবহারিক সুবিধা হল বিষয়বস্তু কাঠামোর "উইজেটাইজেশন"। একটি উদাহরণ হতে পারে মন্তব্য, রেটিং, টুইটার বা ব্লগ আরএসএস ফিড প্রদর্শন, অথবা একটি ই-কমার্স ওয়েবসাইটের জন্য শপিং কার্ট সামগ্রীর প্রদর্শন। এটি মূলত বিষয়বস্তুর একটি অংশ যা মূল এইচটিটিপি অনুরোধের প্রেক্ষাপটের উপর নির্ভর করে একাধিক পৃষ্ঠায় এবং সম্ভবত বিভিন্ন জায়গায় প্রদর্শিত হওয়া প্রয়োজন। ঐতিহ্যবাহী এমভিসি কাঠামো সাধারণত এই ধরনের বিষয়বস্তু কাঠামোর জন্য সরাসরি উত্তর প্রদান করে না, তাই প্রোগ্রামাররা প্রায়শই কাস্টম সহায়ক ব্যবহার করে, তাদের নিজস্ব উইজেট কাঠামো বা লাইব্রেরি ফাইল তৈরি করে, বা প্রধান অনুরোধকৃত নিয়ন্ত্রকের কাছ থেকে সম্পর্কহীন তথ্য টেনে নিয়ে ভিউতে ধাক্কা দেয় এবং আংশিকভাবে রেন্ডার করে। নেতিবাচক দিকটি হ 'ল একটি নির্দিষ্ট বিষয়বস্তু রেন্ডার করার বা প্রয়োজনীয় ডেটা লোড করার দায়িত্ব একাধিক ক্ষেত্রে ফাঁস হয়ে যায় এবং সংশ্লিষ্ট জায়গায় প্রতিলিপি হয়ে যায়। এইচ. এম. ভি. সি, বা বিশেষ করে এই দায়িত্বগুলি পরিচালনা করার জন্য একজন নিয়ন্ত্রকের কাছে উপ-অনুরোধ পাঠানোর ক্ষমতা এই সমস্যাটি সমাধান করার লক্ষ্য রাখে। কাঠামোটি ঐতিহ্যবাহী এমভিসি-র অনুকরণ করে। উদাহরণস্বরূপ, যদি কাউকে মন্তব্য সম্পর্কে কিছু তথ্য লোড করতে হয় এবং সেগুলি এইচটিএমএল বিন্যাসে প্রদর্শন করতে হয়, তবে কেউ কিছু পরামিতি সহ মন্তব্য নিয়ন্ত্রকের কাছে একটি অনুরোধ পাঠাবে। অনুরোধটি তখন মডেলের সাথে যোগাযোগ করে, একটি ভিউ বেছে নেয়, যা বিষয়বস্তু প্রদর্শন করে। একটি ঐতিহ্যবাহী এমভিসি থেকে পার্থক্য হল যে মন্তব্যগুলি সম্পূর্ণ আলাদা পৃষ্ঠায় প্রদর্শনের পরিবর্তে, ব্যবহারকারী যে নিবন্ধটি দেখছেন তার নীচে সেগুলি প্রদর্শিত হয়। এই ক্ষেত্রে, এইচএমভিসি কোড মডুলারিটি বৃদ্ধি করতে, পুনঃব্যবহারযোগ্যতায় সহায়তা করতে এবং উদ্বেগের আরও ভাল পৃথকীকরণ বজায় রাখার চেষ্টা করে। আরও দেখুন প্রেজেন্টেশন-অ্যাবস্ট্রাকশন-কন্ট্রোল (পিএসি) মডেল-ভিউ-কন্ট্রোলার (এমভিসি) রেফারেন্স সফ্টওয়্যার বিশ্লেষণ প্যাটার্ন।