Hierarchical model–view–controller
पदानुक्रमित मॉडल-व्यू-कंट्रोलर (एच. एम. वी. सी.) एक सॉफ्टवेयर वास्तुशिल्प पैटर्न है, जो प्रस्तुति-अमूर्त-नियंत्रण (पी. ए. सी.) के समान मॉडल-व्यू-कंट्रोलर (एम. वी. सी.) की एक भिन्नता है, जिसे 2000 में जावा वर्ल्ड पत्रिका में एक लेख में प्रकाशित किया गया था, लेखक स्पष्ट रूप से पी. ए. सी. से अनजान थे, जो 13 साल पहले प्रकाशित हुआ था। नियंत्रक के पास कुछ निरीक्षण होता है कि वह नियंत्रक द्वारा एक अनुमोदन तंत्र का एहसास करते हुए पहले मॉडल और फिर दृश्य का चयन करता है। मॉडल दृश्य को सीधे डेटा स्रोत तक पहुँचने से रोकता है। एच. एम. वी. सी. वास्तुकला का उपयोग करने का सबसे बड़ा व्यावहारिक लाभ सामग्री संरचनाओं का "विजेटाइजेशन" है। एक उदाहरण टिप्पणी, रेटिंग, ट्विटर या ब्लॉग आर. एस. एस. फ़ीड प्रदर्शन, या ई-कॉमर्स वेबसाइट के लिए शॉपिंग कार्ट सामग्री का प्रदर्शन हो सकता है। यह अनिवार्य रूप से सामग्री का एक टुकड़ा है जिसे मुख्य एचटीटीपी अनुरोध के संदर्भ के आधार पर कई पृष्ठों पर और संभवतः अलग-अलग स्थानों पर भी प्रदर्शित करने की आवश्यकता होती है। पारंपरिक एम. वी. सी. ढांचे आम तौर पर इस प्रकार की सामग्री संरचनाओं के लिए एक सीधा जवाब प्रदान नहीं करते हैं, इसलिए प्रोग्रामर अक्सर कस्टम सहायकों का उपयोग करके, अपनी विजेट संरचनाओं या पुस्तकालय फ़ाइलों का निर्माण करके, या मुख्य अनुरोधित नियंत्रक से असंबद्ध डेटा को देखने और आंशिक रूप से प्रस्तुत करने के लिए दोहराते हैं और लेआउट को बदलते हैं। नकारात्मक पक्ष यह है कि सामग्री के एक विशेष टुकड़े को प्रस्तुत करने या आवश्यक डेटा को लोड करने की जिम्मेदारी कई क्षेत्रों में लीक हो जाती है और संबंधित स्थानों पर डुप्लिकेट हो जाती है। एच. एम. वी. सी., या विशेष रूप से इन जिम्मेदारियों को संभालने के लिए एक नियंत्रक को उप-अनुरोध भेजने की क्षमता का उद्देश्य इस समस्या को हल करना है। यह संरचना पारंपरिक एमवीसी की नकल करती है। उदाहरण के लिए, यदि किसी को टिप्पणियों के बारे में कुछ डेटा लोड करने की आवश्यकता है, और उन्हें एच. टी. एम. एल. प्रारूप में प्रदर्शित करने की आवश्यकता है, तो कोई कुछ मापदंडों के साथ टिप्पणी नियंत्रक को अनुरोध भेजेगा। अनुरोध तब मॉडल के साथ बातचीत करता है, एक दृश्य चुनता है, जो सामग्री प्रदर्शित करता है। पारंपरिक एम. वी. सी. से अंतर यह है कि टिप्पणियों को पूरी तरह से अलग पृष्ठ में प्रदर्शित करने के बजाय, वे उपयोगकर्ता द्वारा देखे जा रहे लेख के नीचे इनलाइन प्रदर्शित किए जाते हैं। इस संबंध में, एच. एम. वी. सी. कोड मॉडुलरिटी बढ़ाने, पुनः प्रयोज्य में सहायता करने और चिंताओं के बेहतर पृथक्करण को बनाए रखने का प्रयास करता है। प्रेजेंटेशन-एब्स्ट्रैक्शन-कंट्रोल (पी. ए. सी.) मॉडल-व्यू-कंट्रोलर (एम. वी. सी.) संदर्भ सॉफ्टवेयर विश्लेषण पैटर्न भी देखें।