वेबफॉर्म एक अमूर्त है जो डेवलपर से वेब के यांत्रिकी को छुपाता है। यह डेस्कटॉप डेवलपर्स को अपने कौशल को वेब पर अपेक्षाकृत आसानी से स्थानांतरित करने की अनुमति देता है। जबकि यह इसे कुछ हद तक हासिल करता है, व्यावहारिक परिदृश्यों में यह आमतौर पर अमूर्त तोड़ने से पहले नहीं होता है और किसी को गन्दा कामकाज में डाल देना पड़ता है। यूनिट परीक्षण मुश्किल है, क्योंकि यूजर इंटरैक्शन को संभालने के लिए तर्क यूआई के साथ कसकर जोड़ता है। एक सामान्य वेबफॉर्म ऐप द्वारा उत्पादित एचटीएमएल इष्टतम से बहुत दूर है। यह आम तौर पर फूला हुआ, पढ़ने में मुश्किल होता है और इसमें बहुत सारी सामग्री होती है जो केवल अमूर्त कार्य करने की अनुमति देने के लिए मौजूद होती है, उदाहरण के लिए व्यूस्टेट, जो अवशोषण में मदद करने के लिए सूचना का एक बड़ा ब्लॉब है, डेवलपर को राज्य का भ्रम देता है, भले ही वेब एक स्टेटलेस माध्यम है।
एमवीसी, हालांकि, वेब के यांत्रिकी को गले लगाता है। वेब अनुरोध और प्रतिक्रिया में होने वाले मौलिक संचालन डेवलपर को सरल अवशोषण के रूप में प्रस्तुत किए जाते हैं। एमवीसी के पास चिंताओं का स्पष्ट अलगाव है। यह मॉडल केवल उन वस्तुओं या संस्थाओं का प्रतिनिधित्व करता है जिनके साथ सिस्टम संबंधित है, इन वस्तुओं के उदाहरणों को पुनर्प्राप्त करने और संग्रहीत करने के तरीकों के साथ। नियंत्रक एक वेब अनुरोध लेता है, मॉडल के खिलाफ संचालन करता है, और उसके बाद मॉडल को दृश्य में रखता है। दृश्य उपयोगकर्ता को मॉडल पेश करने और इंटरफ़ेस आइटमों को उजागर करने के लिए पूरी तरह से एक प्रस्तुतकर्ता है जो उपयोगकर्ता को नियंत्रक को पास करने के लिए अगले अनुरोध को तैयार करने की अनुमति देता है। चिंताओं का यह अलगाव अपेक्षाकृत आसान इकाई परीक्षण के लिए अनुमति देता है। डेवलपर का एचटीएमएल उत्पाद पर पूरा नियंत्रण होता है और अन्य कलाकृतियों को उपस्थित होने की आवश्यकता नहीं होती है (उदा। व्यूस्टेट)।
मैं एमवीसी पसंद करता हूं। दुर्लभ मौकों के लिए वेबफॉर्म का उपयोग करना उपयोगी हो सकता है, उदा। एक त्वरित प्रोटोटाइप या डेमो, लेकिन अन्यथा मैं हमेशा एमवीसी के उपयोग की सिफारिश करता हूं।
वेबफॉर्म से एमवीसी तक किसी प्रोजेक्ट को स्थानांतरित करने के लिए, यह स्पष्ट रूप से बहुत ही व्यक्तिपरक और एप्लिकेशन पर निर्भर है, और बजटीय बाधाएं, लेकिन आम तौर पर मेरा मानना है कि यह सही दिशा में एक कदम है।
स्रोत
2009-10-12 06:49:07
मुझे बिंदु 4 नहीं मिलता है, भले ही आपको अपने कोड पर पूर्ण नियंत्रण की आवश्यकता हो? मैंने एएसपीनेट कोड के साथ नियंत्रण की कमी कभी नहीं देखी। –
नियंत्रण - अपने कोड का आर्किटेक्चरिंग स्वयं ही। कोई भी ऑटो जेनरेट कोड कोड नहीं होगा क्योंकि यह सामान्य एएसपी.Net आवेदकों में है – solairaja