डॉट नेट टेक्नोलॉजी कई प्रकार के एप्लीकेशन बनाने में सहायक है। डॉट नेट टेक्नोलॉजी की मदद से आप विंडोज और वेब एप्लीकेशंस बना सकते हैं। इसके अतिरिक्त मोबाइल एप्लीकेशंस भी डॉट नेट टेक्नोलॉजी की मदद से बनाना संभव है। इस प्रकार डॉट नेट टेक्नोलॉजी पुरानी टेक्नोलॉजी से बेहतर है। पुरानी टेक्नोलॉजी से तात्पर्य COM टेक्नोलॉजी, कॉम्पोनेंट ऑब्जेक्ट मॉडलिंग, से है।
ASP.NET एएसपी डॉट नेट क्या है
asp.net का पूरा नाम एक्टिव सर्वर पेज नेटवर्क इनेबल्ड टेक्नोलॉजी है।
एएसपी अर्थात एक्टिव सर्वर पेज एक कॉम टेक्नोलॉजी है जिससे पहले वेब पेज बनाए जाते थे। ASP एक COM technology आधारित तकनीक है परंतु डॉट नेट के आने के बाद एएसपी को छोड़कर माइक्रोसॉफ्ट asp.net टेक्नोलॉजी को वेब पेज बनाने के लिए उपयोग किया जाता है। वर्तमान में asp.net टेक्नोलॉजी की मदद से ही वेब पेज बनाए जाते हैं। asp.net टेक्नोलॉजी में लगातार सुधार होता रहा है। इस टेक्नोलॉजी के अंतर्गत फ्रेमवर्क क्लासेस होते हैं जिसे यूज कर वेब एप्लिकेशन डेवलप किया जाता है।
फ्रेमवर्क, MSIL और CLR क्या है।
फ्रेमवर्क से तात्पर्य कुछ आधारभूत क्लासेज के समूह, जिसे लाइब्रेरी कहते हैं, से है। इन बेस क्लासेज की मदद से वेब प्रोग्रामर किसी वेब एप्लीकेशन को डेवलप करते हैं और बने बनाए क्लासेस के कारण डेवलपमेन्ट के समय में बचत होती है।
फ्रेमवर्क क्लासेस के अंतर्गत शुरू में ही कुछ templates मिल जाते हैं जिन टेंपलेट का उपयोग कर डेवलपर अपने एप्लीकेशन को डिवेलप करते हैं। डॉट नेट के अंतर्गत अगर आपको विंडोज एप्लीकेशन बनाना हो अथवा वेव अप्लीकेशन बनाना हो तो सबसे पहले आप एक नए प्रोजेक्ट को सेलेक्ट करते हैं। प्रोजेक्ट के अंतर्गत आप विंडोज टेंपलेट अथवा वेब टेंप्लेट का चयन करते हैं। यह इस बात पर निर्भर करती है कि आप विंडोज एप्लीकेशन बनाना चाहते हैं अथवा वेवएप्लीकेशन। अगर आपको वेब एप्लिकेशन बनाना है तो टेंपलेट वेब के चुनेंगे। उसके साथ साथ आपको अपने प्रोजेक्ट के लैंग्वेज को भी चयन करना पड़ता है। इसके पीछे कारण यह है कि डॉट नेट के अंतर्गत विभिन्न प्रोग्रामिंग लैंग्वेज उपलब्ध है और आप उनमें से किसी भी प्रोग्रामिंग लैंग्वेज की मदद से अपनी एप्लीकेशन को डेवलप कर सकते हैं। ज्यादातर केस में एप्लिकेशन डेवलप करने के लिए डेवलपर C# लैंगुएज का उपयोग करते हैं। अगर आप चाहे तो vb.net लैंग्वेज का उपयोग कर सकते हैं। vb.net लैंग्वेज विजुअल बेसिक लैंग्वेज का ही आप ग्रेडेड वर्शन है जो डॉट नेट टेक्नोलॉजी के अंतर्गत उपलब्ध है। सी शार्प लैंग्वेज में ज्यादातर डेवलपर वेब डेवलपमेंट का कार्य करते हैं। जिस लैंगुएज का चयन करेंगे उस लैंगुएज के कम्पाइलर द्वारा source कोड का compilation होता है। कंपाइलेशन के पश्चात source कोड intermediate language IL में बदल जाता है। इसको MSIL भी कहते हैं। जब एप्पलीकेशन को run किया जाता है तो यह native कोड में परिवर्तित हो जाता है। कोड को run कराने के लिए CLR Common Language Runtime नामक सॉफ्टवेयर का उपयोग किया जाता है। इसको संक्षेप में Runtime भी कहते हैं।
.NET Framework Version
डॉट नेट फ्रेमवर्क के अलग-अलग वर्शन में एप्लीकेशन को डेवलप करना संभव है। डॉट नेट फ्रेमवर्क के अलग-अलग वर्शन में जब किसी एप्लीकेशन को डेवलप किया जाता है तो उस एप्लीकेशन की सिक्योरिटी फीचर में अंतर होते हैं। जो अद्यतन updated फ्रेमवर्क वर्सन है उसमें एप्लीकेशन को डेवलप करने पर ज्यादा सिक्योरिटी और अन्य फ़ीचर्स उपलब्ध होते हैं। एप्लीकेशन की सिक्योरिटी से तात्पर्य कोड एक्सेस सिक्योरिटी और अन्य प्रकार की सिक्योरिटी से है।
Code Access Security
कोड एक्सेस सिक्योरिटी का तात्पर्य है की एप्लीकेशन के कोड दूसरे अनधिकृत एप्लीकेशन या व्यक्ति द्वारा प्राप्त नहीं किया जा सकता है। माइक्रोसॉफ्ट कम्पनी एप्लीकेशन में सिक्योरिटी फीचर के लिए बहुत ही ज्यादा ध्यान रखती है और निरंतर सिक्योरिटी फीचर को अपग्रेड करती रहती है। जितना लेटेस्ट डॉट नेट फ्रेमवर्क एप्लीकेशन को डेवलप करने में यूज करेंगे उतना ही एप्लीकेशन सिक्योर होगा।
IDE इंटीग्रेटेड डेवलपमेंट एनवायरमेन्ट सॉफ्टवेयर
डॉट नेट टेक्नोलॉजी के अंतर्गत किसी एप्लीकेशन को डेवलप करने के लिए माइक्रोसॉफ्ट द्वारा बनाया IDE उपलब्ध है। IDE आईडीई अर्थात इंटीग्रेटेड डेवलपमेंट एनवायरमेन्ट इंटीग्रेटेड डेवलपमेंट एनवायरमेंट एक एप्लीकेशन एडिटर होता है जिसकी मदद से कोई डेवलपर अपने डॉट नेट एप्लीकेशन को सरलता से डेवलप कर सकता है। माइक्रोसॉफ्ट डॉट नेट एप्लीकेशन को डिवेलप करने के लिए विजुअल स्टूडियो नामक एप्लीकेशन या इंटीग्रेटेड डेवलपमेंट एनवायरमेंट उपलब्ध कराती है।
Visual Studio Types
विजुअल स्टूडियो दो रूप में उपलब्ध है। इसका फ्री वर्शन और लाइसेंस्ड वर्शन भी उपलब्ध है। कहने का तात्पर्य है कि डेवलपर फ्री वर्शन के विजुअल स्टूडियो का उपयोग कर डॉट नेट एप्लीकेशन को डेवलप कर सकता है। इसके अतिरिक्त और भी अन्य आईडीई मार्केट में उपलब्ध है जिनकी मदद से डॉट नेट एप्लीकेशन को डेवलप किया जा सकता है। विजुअल स्टूडियो एक बहुत ही हेवी एडीटर है। विजुअल स्टूडियो की मदद से किसी प्रकार का एप्लीकेशन जैसे कंसोल एप्लीकेशन, विंडोज एप्लीकेशन, वेब एप्लीकेशन या मोबाइल एप्लीकेशन डेवलप किया जा सकता है।
विजुअल स्टूडियो को स्टार्ट करने पर एक स्टार्ट पेज दिखता है। इस स्टार्ट पेज को हिडन या विजिबल किया जा सकता है। इसके लिए ऑप्शन से जाकर सेटिंग चेंज करनी होती है। विजुअल स्टूडियो के अंतर्गत न्यू प्रोजेक्ट स्टार्ट करने के लिए कंट्रोल प्लस शिफ्ट प्लस एन बटन्स को एक साथ दबाते हैं। इसके फल स्वरूप न्यू प्रोजेक्ट का विंडो या डायलॉग बॉक्स सामने आता है। सबसे पहले लेफ्ट पेन में टेंप्लेट के अंतर्गत अपनी भाषा का चयन करना होता है। यह सीशार्प अथवा विजुअल बेसिक हो सकता है। भाषा का चयन करने के उपरांत हमें जिस तरह का एप्लीकेशन बनाना हो जैसे उदाहरण के लिए वेब एप्लीकेशन या विंडोज एप्लीकेशन उसका चयन करना होता है ऐसा करने के उपरांत बीच वाले विंडोज एयरप्लेन में हमें अलग-अलग इंटरफ़ेसेज दिखाई देते हैं इंटरफ़ेसेज वस्तुतः अलग-अलग तरह के एप्लीकेशन जैसे विंडोज फॉर्म एप्लीकेशन आदि होते हैं उदाहरण के लिए यदि विंडोज फॉर्म क्रिएट करना हो तो डेवलपर को विंडोज फॉर्म एप्लीकेशन का चयन करना होगा। ऐसा करने के उपरांत एक नया डायलॉग बॉक्स रिपेयर होता है। इस डायलॉग बॉक्स में डेवलपर को अपने एप्लीकेशन का नाम और जिस लोकेशन पर एप्लीकेशन को सेव करना हो उसको देना पड़ता है। आमतौर पर एप्लीकेशन का नाम और सॉल्यूशन का नाम समान होता है।
Solution file
सॉल्यूशन से तात्पर्य एक या एक से अधिक प्रोजेक्ट के समूह से है जिनकी सहायता से कोई एप्लिकेशन बनाया जाता है। solution का अर्थ application समझना चाहिए। विसुअल स्टूडियो में जब प्रोजेक्ट बनाया जाता है तो वह प्रोजेक्ट फ़ाइल किसी solution फोल्डर के भीतर होता है। solution फ़ाइल सबसे पहले बनता है जिसका एक्सटेंशन .Sln होता है। यह फ़ाइल एप्पलीकेशन में प्रयुक्त सभी प्रोजेक्ट फाइल्स का metadata रखता है। कई बार ऐसा होता है कि किसी प्रोजेक्ट के कंपोनेंट को किसी अन्य प्रोजेक्ट में उपयोग किया जाता है। इस विषय को ध्यान में रखते हुए सॉल्यूशन की धारणा विजुअल स्टूडियो के अंतर्गत दिखाई देती है। आमतौर पर जब हम एक नया प्रोजेक्ट बनाते हैं तो सॉल्यूशन का नाम और प्रोजेक्ट का नाम समान होता है परंतु यह ध्यान रखने वाली बात है कि सॉल्यूशन के अंतर्गत एक या एक से अधिक प्रोजेक्ट उपलब्ध हो सकते हैं। नियत रूप से विजुअल स्टूडियो के दाहिनी तरफ सॉल्यूशन एक्सप्लोरर विंडो होता है। इस विंडो के भीतर एक या एक से अधिक प्रोजेक्ट दिखाई देते हैं। जब हम कोई नया प्रोजेक्ट बनाते हैं तो सॉल्यूशन एक्सप्लोरर विंडो के अंतर्गत वही एकमात्र प्रोजेक्ट दिखाई देता है और उस प्रोजेक्ट के अंतर्गत जिस एप्लीकेशन को विकसित कर रहे हैं उस एप्लीकेशन का नाम भी दिखाई देता है। यह सब सोपानीकृत hierarchical दृश्य होता है। विजुअल स्टूडियो के अंतर्गत सॉल्यूशन एक्सप्लोरर को समझना अत्यंत जरूरी है। जैसा कि हमने देखा की सॉल्यूशन एक्सप्लोरर के अंतर्गत प्रोजेक्ट और एप्लीकेशन दिखाई देते हैं। जैसा कि हम जानते हैं कि एक एप्लीकेशन कई सारे लाइब्रेरीज और क्लासेज को रिफरेंस कर सकता है इन रेफरेंसेस को दिखाने के लिए हमें रेफरेंसेस बटन को क्लिक करना होता है।
Web.config file
एक बात और समझने लायक है कि जब हम वेब एप्लीकेशन डेवलप करते हैं तो सॉल्यूशन एक्सप्लोरर के अंतर्गत हमें वेब कॉन्फ़िग web.config नामक एक फाइल भी दिखाई देता है। यह फाइल वेव एप्लीकेशन को कंफीगर करने में उपयोग किया जाता है। ध्यान देने वाली बात है कि आप ना केवल एक एप्लीकेशन को कंफीगर कर सकते हैं अपितु पूरे मशीन को भी कंफीगर कर सकते हैं मशीन को कनफिगर करने का तात्पर्य है की उस मशीन पर उपलब्ध सारे एप्लीकेशंस मशीन कंफीग्रेशन के कंफीगरेशन के अनुसार कॉन्फ़िगर हो जाते हैं इसके विपरीत एप्लीकेशन कंफीगर करने पर केवल वही एप्लीकेशन उस कंफीगर से प्रभावित होता है। वेब कांफीग फ़ाइल की मदद से किसी असेम्बली या नेमस्पेस को रेफेर किया जा सकता है। इसी तरह एप्लिकेशन स्तर के डिबगिंग के लिए भी वेब कांफीग फ़ाइल का उपयोग किया जा सकता है। ऐसा करने का लाभ यह है कि हमे बार बार अलग अलग पेज में उनका रेफरेन्स नहीं देना पड़ता।
वेब कॉन्फ़िग XML फ़ाइल होता है। वेब कंफीग्रेशन फाइल का उपयोग किसी वेब एप्लीकेशन के कंफीग्रेशन के लिए किया जाता है। इसका तात्पर्य है कि जब हम उस एप्लीकेशन में यूज असेंबली या नेमस्पेस या वेरिएबल इत्यादि को एप्लीकेशन लेवल पर सेट करना चाहते हैं अथवा उसका मान प्राप्त करना चाहते हैं तो हम उस वेरिएबल, नेमस्पेस या असेंबली को वेब कॉन्फ़िग फाइल में लिख देते हैं। वह एप्लीकेशन उस वेब कंफीग्रेशन फाइल को देखकर यह निश्चित कर लेता है कि किस नेमस्पेस, असेंबली अथवा वेरिएबल को यूज करना है।
उदाहरण के लिए, मान लीजिए कि System.Net.Mail नेमस्पेस का उपयोग बहुत सारे पेज में करना है तो इस नेमस्पेस को web.config फ़ाइल में लिख सकते हैं। उदाहरण के लिए,
<configuration>
<system.web>
<pages>
<namespaces>
< add namespace="System.Net.Mail" >
</namespaces>
</pages>
</system.web>
</configuration>
इसीतरह, यदि वेब प्रोजेक्ट में किसी असेम्बली का उपयोग करना हो तो उसको web.config फ़ाइल में लिख सकते हैं। उदाहरण के लिए,
<?XML version="1.0"?>
<configuration>
<system.web>
<compilation>
<assemblies>
< add assembly ="System.Messaging, Version=2.0.0.0, Culture=neutral, Public KeyToken=B06F5F74D64777A" >
</assemblies>
</compilation>
</system.web>
</configuration>
ASP.NET Web forms
डॉट नेट के अंतर्गत वेब एप्लीकेशन अथवा विंडोज एप्लीकेशन को बनाने के लिए हमें फॉर्म की जरूरत पड़ती है। किसी फॉर्म पर अलग-अलग तरह के कंट्रोल्स को व्यवस्थित कर उपयुक्त फॉर्म का निर्माण किया जाता है। अब यह कंट्रोल्स दो प्रकार के हो सकते हैं। कुछ ऐसे कंट्रोल होते हैं जिनको एचटीएमएल form-control कहते हैं। दूसरे तरह के कंट्रोल होते हैं जिनको सर्वर form-control कहते हैं। एचटीएमएल कंट्रोल और सर्वर कंट्रोल में अंतर होता है
Framework Class Libraries
ASP NET में प्रोग्रामिंग करने के लिए हमें दो चीजों को समझना चाहिए। फ्रेमवर्क क्लास लाइब्रेरी और दूसरा कॉमन लैंग्वेज रनटाइम।
फ्रेमवर्क क्लास लाइब्रेरी ऐसे क्लासेज का समूह है जो अलग-अलग कार्यों के आधार पर समूहीकृत किए गए हैं उदाहरण के लिए File क्लास Graphics ग्राफिक्स क्लास Random क्लास SmtpClient क्लास।
प्रत्येक क्लास के कुछ प्रॉपर्टीज मेथड्स और इवेंट्स होते हैं। उदाहरण के लिए, SmtpClient क्लास के properties है Host, Port जबकि Send, SendAsync मेथड्स हैं।
SmtpClient क्लास का उपयोग ईमेल को भेजने के लिए किया जाता है Host ईमेल सर्वर को इंगित करता है जबकि Port ईमेल मैसेज को प्रोसेस करने वाले एप्लीकेशन के संबंध में होता है जो उस सर्वर पर स्थापित है।
ई-मेल को भेजने का तरीका सिंक्रोनस भी हो सकता है अथवा असिंक्रोनस। इसके लिए Send और SendAsync मेथड्स हैं।
© अजीत कुमार, सर्वाधिकार सुरक्षित।
इस आलेख को उद्धृत करते हुए इस लेख के लिंक का भी विवरण दें। इस आलेख को कॉपीराइट सूचना के साथ यथावत साझा करने की अनुमति है। कृपया इसे ऐसे स्थान पर साझा न करें जहाँ इसे देखने के लिए शुल्क देना पडे।
No comments:
Post a Comment