ASP.NET MVC - .NET Framework Part-1 Web Application Development

ASP.NET MVC - वेब फ्रेमवर्क

Microsoft ASP.NET MVC, .NET टेक्नोलॉजी का एक वेब फ्रेमवर्क है जो वेब एप्लीकेशन को डिज़ाइन करने और बनाने का एक नया तरीका देता है। ASP.NET MVC को ASP.NET के ऊपर बनाया गया है। इसका मतलब है कि ASP.NET डेवलपर्स को अपनी ASP.NET की जानकारी और स्किल को छोड़ने की ज़रूरत नहीं है। वे ASP.NET MVC में भी अपनी मौजूदा स्किल और जानकारी का इस्तेमाल कर सकते हैं। उन्हें बस यह याद रखना है कि ASP.NET MVC, MVC डिज़ाइन आर्किटेक्चर का इस्तेमाल करके वेब एप्लीकेशन बनाने का एक और तरीका देता है।

ASP.NET MVC पर आधारित वेब एप्लीकेशन, MVC डिज़ाइन पैटर्न का इस्तेमाल करते हैं। यह पैटर्न कई सालों से है, लेकिन ASP.NET में इवेंट-बेस्ड प्रोग्रामिंग मॉडल के ज़्यादा इस्तेमाल की वजह से, वेब एप्लीकेशन में MVC मॉडल पर ज़्यादा ध्यान नहीं दिया गया।

हम जानते हैं कि वेब एप्लीकेशन वेब सर्वर से कम्युनिकेट करने के लिए HTTP प्रोटोकॉल का इस्तेमाल करते हैं। HTTP एक स्टेटलेस प्रोटोकॉल है और इसी वजह से ASP.NET, जो स्टेट मैनेजमेंट तकनीकों का इस्तेमाल करता है, वेब एप्लीकेशन बनाने के लिए सही विकल्प नहीं है। ASP.NET एप्लीकेशन के बहुत सारे रिसोर्स, स्टेट मैनेजमेंट को संभालने में खर्च हो जाते हैं।

दूसरी ओर, ASP.NET MVC एप्लीकेशन HTTP प्रोटोकॉल की स्टेटलेस प्रकृति का ध्यान रखता है और ASP.NET के उलट, वेबपेज की स्टेट बनाए रखने के लिए सर्वर कंट्रोल का इस्तेमाल नहीं करता है। ASP.NET MVC में, हम HTML टेक्नोलॉजी का पूरा इस्तेमाल करते हैं। हम सर्वर-बेस्ड कंट्रोल का इस्तेमाल नहीं करते हैं जो स्टेट को मैनेज करने में बहुत सारे रिसोर्स खर्च करते हैं। हम MVC ऐप में HTML कंट्रोल बनाने के लिए HTML हेल्पर एक्सटेंशन मेथड का इस्तेमाल करते हैं।

MVC डिज़ाइन पैटर्न के मुख्य एलिमेंट

अब हम समझते हैं कि MVC डिज़ाइन पैटर्न के मुख्य एलिमेंट क्या हैं। MVC का मतलब है मॉडल-व्यू-कंट्रोलर। मॉडल, व्यू और कंट्रोलर - ये तीनों एलिमेंट MVC डिज़ाइन पैटर्न के मुख्य हिस्से हैं। MVC एप्लीकेशन में कंट्रोलर एप्लीकेशन का मुख्य हिस्सा होता है। यह एप्लीकेशन के पूरे फ्लो को कंट्रोल करता है।

जब यूज़र ब्राउज़र को HTTP रिक्वेस्ट भेजता है, तो सर्वर रिक्वेस्ट को राउटिंग इंजन को भेजकर उसे हैंडल करता है। राउटिंग इंजन URL का एनालिसिस करने के बाद उसे सही कंट्रोलर को भेजता है, जिसका पैटर्न कुछ ऐसा होता है: domain/controller/action/। कंट्रोलर रिक्वेस्ट को देखता है और तय करता है कि व्यू पेज पर दिखाने के लिए किस मॉडल (यानी डेटा) की ज़रूरत है और डेटा दिखाने के लिए किस व्यू पेज का इस्तेमाल किया जाएगा। व्यू पेज पर डेटा कैसे दिखाया जाएगा, यह व्यू तय करता है।

वेब डिज़ाइनर 'व्यू' (view) पेजों पर काम करते हैं और बैक-एंड डेवलपर्स 'मॉडल' (model) और 'कंट्रोलर' (controller) पर काम करते हैं। इसलिए, MVC डिज़ाइन पैटर्न अलग-अलग कामों को साफ़ तौर पर अलग-अलग रखता है। कंट्रोलर, बिज़नेस लॉजिक के हिसाब से मॉडल डेटा को प्रोसेस करता है और उसे यूज़र इंटरफ़ेस के लिए 'व्यू' को भेजता है। 'व्यू' को मॉडल को सिर्फ़ प्रेजेंटेशन (दिखावे) के मकसद से प्रोसेस करना चाहिए।

असल में, 'व्यू' एक HTML पेज होता है जिसमें C# कोड मिला होता है। 'व्यू' के अंदर Razor सिंटैक्स का इस्तेमाल होता है और 'व्यू' के कंपाइलेशन प्रोसेस के बाद, इसे इंटरप्रेट करके HTML में बदल दिया जाता है।


Next: ASP.NET MVC - .NET Framework Part-2 App_Start folder

टिप्पणियाँ

इस ब्लॉग से लोकप्रिय पोस्ट

Differences between in-process and out-of-process hosting models

Web Fundamental Concepts in Hindi for Beginners - FAQs with their Answers Part-1

Introduction to ASP.NET Core and Web Frameworks