वर्तमान समय में Web Applications की काफी ज्यादा Demand है, क्योंकि इन्हें Desktop व Web दोनों पर समान रूप से उपयोग में लिया जा सकता है और ऐसा इसलिए किया जा सकता है क्योंकि Web Applications ऐसे Applications होते हैं, जो Platform व Processor Architecture पर Depend नहीं होते परिणामस्वरूप किसी भी प्रकार के Operating System व किसी भी प्रकार के Processor Architecture पर समान रूप से Execute हो जाते हैं।
Web Applications HTTP के माध्यम से Operate होते हैं जो कि एक Stateless Protocol होता है। साथ ही Client व Server भी एक दूसरे से पूरी तरह से Separate होते हैं और ये सभी बातें किसी Web Application की कार्य प्रणाली व Development Process को काफी प्रभावित करते हैं।
ASP.NET हमें वे Functionalities Provide करता है, जिनका प्रयोग करते हुए हम HTTP की विभिन्न जटिलताओं के बावजूद ज्यादा आसानी से Web Application Develop करने की क्षमता प्राप्त करते हैं क्योंकि Web Application Development से सम्बंधित विभिन्न जटिलताओं को ASP.NET Framework स्वयं अपने स्तर पर Handle कर लेता है।
ASP.NET कोई नई Technology नहीं है, बल्कि जब Microsoft द्वारा .NET Framework को Launch किया गया था, तब ASP.NET 1.0 को भी .NET Framework के एक Part के रूप में Launch किया गया था। जिस समय ASP.NET 1.0 Launch हुआ था, उस समय किसी भी प्रकार के Software को Develop करने के लिए Visual Basic Programming Language को सर्वाधिक Use किया जाता था। Visual Basic को Use करने का मुख्य कारण इसकी सरलता था, जो कि मूल रूप से Event Driven Programming Model पर आधारित था।
यानी Visual Basic Programming Language वास्तव में Visual Studio नाम के एक IDE के साथ Bind था, जो कि विभिन्न प्रकार के Professional Application Develop करने की Speed को कई गुना तेज कर देता था। क्योंकि Visual Basic Language का प्रयोग करते हुए Application Develop करते समय हम Drag-and-Drop तकनीक का प्रयोग करते हुए बडी ही आसानी से Events Driven GUI Applications Create कर सकते थे। लेकिन उस समय ऐसी कोई सुविधा Web Application के लिए नहीं थी। यानी हम Drag-and-Drop जैसी Event Driven Programming Techniques का प्रयोग करते हुए Web Applications Create नहीं कर सकते थे।
इसलिए Microsoft ने Visual Basic की सफलता को देखते हुए एक ऐसा Programming Model Develop करने के बारे में विचार किया, जिसके माध्यम से ठीक उसी तरह से Web Applicants भी Develop किए जा सकें, जिस प्रकार से Visual Basic का प्रयोग करते हुए Desktop Applications Develop किए जाते थे और इसी विचार के Implementation के रूप में ASP.NET 1.0 का विकास किया गया तथा Visual Basic जैसे Model को Web Forms नाम से Launch किया गया, जिसे हम ASP.NET Web Forms Model के नाम से जानते हैं।
ASP.NET Web Forms का मूल Concept ये था कि Web Application Develop करने के लिए HTTP व HTML जैसी Web Programming Related Languages का ज्ञान होना जरूरी न हो बल्कि कोई भी Desktop Programmer, जिसे Visual Basic के Event Driven Programming Model का ज्ञान हो, वह भी आसानी से समान Programming Model का प्रयोग करते हुए Web Application भी Develop कर सके।
वर्तमान समय में ये Concept काफी अनुपयोगी महसूस हो सकता है, क्योंकि वर्तमान समय में लगभग सभी Programmers को HTTP व HTML Technology का पर्याप्त ज्ञान है, लेकिन 2001 के दौरान ये Concept काफी महत्वपूर्ण व उपयोगी था।
उस समय ज्यादातर लोग Visual Basic Programming Model का प्रयोग करते हुए ही Desktop Applications Develop किया करते थे और Microsoft अपने Visual Basic Developers को एक ऐसी ही Web Technology Provide करना चाहता था, जिसे उसके Visual Basic Use करने वाले Programmers बडी ही आसानी से उपयोग में लेते हुए Web Applications Develop करने की क्षमता प्राप्त कर सकें।
यानी Microsoft अपने पुराने Programmers को खोना नहीं चाहता था, जबकि उस समय Internet Related Technologies व Devices का विकास बहुत ही तेजी से हो रहा था और Microsoft नही चाहता था कि उसके Visual Basic Programmers उस समय की Market Requirements को पूरा करने के लिए किसी अन्य Technology या Programming Language की तरफ Move हों।
फिर Microsoft ने ASP.NET 1.0 Launch किया, जिसके अन्तर्गत कुछ Core Themes को Include किया गया था। ये Themes वर्तमान समय तक के Latest ASP.NET 4.5 तक के Versions में भी Available हैं, हालांकि उनका रूप व Functionality, Versions के अनुसार बदलता गया है।
ASP.NET 1.0 एक पूरी तरह से Object Oriented Programming Model पर आधारित Framework था, जिसकी वजह से इस Framework के आधार पर Develop किए गए Web Applications को Manage, Maintain व Extend करना आसान था। साथ ही ASP.NET, .NET Framework से Closely Related था, जिसकी वजह से .NET Framework की विभिन्न Functionalities (LINQ, Entity Framework, ADO, Automatic Garbage Collection, etc…) को ASP.NET Application में भी बिना किसी Extra Configuration के Directly प्राप्त किया जा सकता था।
साथ ही ASP.NET Applications ही ,d मात्र ऐसे Web Applications होते हैं, जो कि Compiled होते हैं, जबकि अन्य सभी Server Side Technologies या Programming Languages Scripting या Interpreter Based Languages पर आधारित हैं। यहां तक कि Create किए जाने वाले ASP.NET Webpages के HTML Markup भी .NET Classes में Compile होते हैं। इसलिए ASP.NET Applications की Speed किसी भी अन्य प्रकार के Web Application की Speed से तुलनात्मक रूप से कुछ ज्यादा Fast होती है।
इसके अलावा ASP.NET को Visual Studio IDE के साथ Closely Bind किया गया है, इसलिए Web Applications को Develop, Test, Debug, Deploy करने जैसे कामों को भी काफी तेजी से Perform किया जा सकता है।
हालांकि यदि हम चाहें तो बिना Visual Studio का प्रयोग किए हुए भी ASP.NET Web Application Develop कर सकते हैं, लेकिन फिर भी Visual Studio का प्रयोग करते हुए हम तुलनात्मक रूप से काफी ज्यादा Rapid तरीके से Web Applications Develop कर सकते हैं, जो कि किसी भी Company या Professional Development की पहली जरूरत होती है, क्योंकि Web Application की Success व Costing दोनों] काफी हद तक Development Time पर Depend होती है।
चूंकि .NET Framework, Language Interoperability की सुविधा भी Provide करता है, इसलिए ASP.NET Applications Develope करने के लिए हमें किसी नई Programming Language को सीखने की जरूरत नहीं होती। बल्कि .NET Framework के लिए 50 से ज्यादा Most Popular Programming Languages को Supported बनाया गया है, जिनका प्रयोग करते हुए कोई भी Programmer ASP.NET Framework आधारित Web Application Develop कर सकता है।
उदाहरण के लिए यदि आप C++ या Java Programming Language में पहले Application Software Develop कर चुके हैं व आपको इन Programming Language का अच्छा ज्ञान है, तो ASP.NET Web Application Develop करने के लिए आपको C# या VB.NET सीखने की जरूरत नहीं है। बल्कि आप C++ या Java Programming Syntaxes का प्रयोग करते हुए भी ASP.NET Web Application Develop कर सकते हैं। इसी तरह से यदि आपको JavaScript या PHP का ज्ञान है, तो आप इन Scripting Languages का प्रयोग करते हुए भी ASP.NET Application Develop कर सकते हैं।
हालांकि .NET Development के लिए Microsoft ने C# नाम की एक नई Programming Language को विकसित किया था, और यदि .NET Development के लिए नई Programming Language सीखने की जरूरत महसूस हो, तो C# को ही सीखना चाहिए क्योंकि C# काफी हद तक Java से मिलती&जुलती है व काफी Powerful Programming Language है, जबकि VB.NET को अब उतना ज्यादा Use नहीं किया जाता, जितना .NET Framework के शुरूआती दौर में किया जाता था। इसे समझने के लिए हम Google Trends का प्रयोग कर सकते हैं, जो कि निम्नानुसार Output Generate कर रहा है:
जैसाकि इस चित्र द्वारा हम समझ सकते हैं कि Google Search Engine पर जितनी बार C# को Search किया गया है, उतनी बार VB व Visual Basic दोनों Phrases को Search नहीं किया गया है। साथ ही इस Trend में C# को Blue Line द्वारा Represent किया जा रहा है, जो कि Consistently सीधी रेखा के रूप में दिखाई दे रहा है, जबकि VB व Visual Basic दोनों का Market धीरे&धीरे कम होता जा रहा है और सम्भव है कि दो चार साल बाद Microsoft द्वारा Visual Basic को पूरी तरह से Deprecate भी कर दिया जाए। इसलिए बेहतर यही है कि .NET Applications Development में Long Term Career बना, रखने के लिए C# Programming Language को ही प्राथमिकता के साथ सीखा जाए, VB.NET को नहीं।
ASP.NET को IIS के साथ Tightly Integrate किया गया है, जो कि Microsoft द्वारा Developed Windows Based Web Server है। सभी ASP.NET Applications इसी IIS Web Server पर ही Deploy व Run होते हैं। (ASP.NET Overview)
ये Article इस वेबसाईट पर Selling हेतु उपलब्ध EBook Core ASP.NET WebForms with C# in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी।
Core ASP.NET WebForms in Hindi | Page:647 | Format: PDF