.NET Framework Development History

.NET Framework Development History: हालांकि जब हम Professional Development करते हुए किसी Application/Service को Develop करते हैं, तो हमें उस Application/Service से सम्बंधित .NET Framework Provided Classes को Use करना जरुरी होता है और उस समय हमें पता होना चाहिए कि किस जरूरत को किस .NET Framework Class द्वारा पूरा किया जा सकता है।

यदि हम विभिन्न .NET Framework Versions द्वारा Provide की जाने वाली विभिन्न प्रकार की Functionalities को उनके Working के अनुसार Categories करें, तो Microsoft.NET 4 Framework द्वारा Provide की जाने वाली विभिन्न Services को हम निम्न चित्रानुसार Group करते हुए आसानी से समझ सकते हैं:

Summary of .NET Framework - BccFalna.com

जैसाकि इस चित्र द्वारा हम समझ सकते हैं कि ECMA Specified Base Class Library (BCL), Microsoft Supported Non-Standard Base Class Library (FCL), .NET Supported Programming Languages, LINQ, आदि सभी .NET Framework Platform के Core का हिस्सा हैं, जबकि ASP.NET (WebForms, MVC, Dynamic Data), Windows Presentation Foundation (WPF),WinForms User Interface Design करने से सम्बंधित Classes का Group हैं।

इसी तरह से Data Services, Velocity, Windows Communication Foundation (WCF)Windows Workflow Foundation (WF), .NET Framework द्वारा Web Services या Services Create करने से सम्बंधित Classes का Group हैं और ADO.NET, Entity FrameworkLINQ to SQL .NET Framework की Data Access करने से सम्बंधित Classes का समूह हैं।

इस तरह से यदि हम चाहें तो पूरे .NET CLI Infrastructure को निम्न चित्रानुसार .NET Framework के विभिन्न हिस्सों को विभिन्न Layers के रूप में भी Represent कर सकते हैं:

Summary of .NET Framework - BccFalna.com

हालांकि इस चित्र में हमने ASP.NET, ADO.NET व Windows Forms को BCL के अन्तर्गत रखा है, जो कि वास्तव में ECMA Standard Specification के अनुसार BCL का हिस्सा नहीं हैं, लेकिन Microsoft के अनुसार ये Non-Standard BCL का ही हिस्सा हैं, क्योंकि .NET Framework का प्रयोग करके मूल रूप से इन्हीं तीन प्रकार के Applications को Design किया जाता है।

साथ ही विभिन्न प्रकार की Special Requirements को पूरा करने से सम्बंधित Classes को Microsoft द्वारा .NET FCL का हिस्सा रखा गया है। इसलिए FCL को BCL से ऊपर की Layer में रखा गया है।

जबकि सभी .NET Supported Programming Languages, Common Type SpecificationCommon Language Specification के Rules को Follow करते हैं, इसलिए सभी .NET Supported Programming Languages को .NET Platform के सभी हिस्सों के ऊपर यानी उपरोक्त चित्र में Top पर रखा गया है।

चूंकि विभिन्न .NET Supported Programming Languages, .NET Platform के CTSCLS Specifications के सभी Rules को Follow करते हैं, जो कि .NET Platform में ही Defined किए गए हैं, इसलिए विभिन्न .NET Supported Programming Languages वास्तव में .NET Platform का ही हिस्सा होते हैं।

अत: जब किसी नए प्रकार के Feature को Support करवाने के लिए किसी .NET Supported Programming Languages को Modify किया जाता है, तो वास्तव में .NET Platform के ही किसी हिस्से को ही Modify किया जाता है। इस तरह से इस पूरे Chapter में हमने .NET Framework के जिन विभिन्न हिस्सों के बारे में Discuss किया है, उन सभी हिस्सों को हम निम्नानुसार एक Single चित्र द्वारा Represent कर सकते हैं:

Summary of .NET Framework - BccFalna.com

यदि हम उपरोक्त चित्र के आधार पर ये कहें कि किसी भी .NET Supported Programming Language को सीखने के लिए हमें पूरा .NET Framework नहीं सीखना होता, बल्कि हमें केवल .NET 2.0 तक का Framework ही और विभिन्न Updated Versions के केवल Updated Base Classes को ही समझना होता है, तो गलत नहीं होगा। क्योंकि .NET Framework के विभिन्न Updated Versions में केवल नए प्रकार के Application Softwares को Develop करने से सम्बंधित Classes को Define करने पर ही ज्यादा ध्‍यान दिया गया है।

इस तरह से विभिन्न तरीकों द्वारा हमने .NET Framework को समझाने की कोशिश की और उम्मीद है कि अब आप अच्छी तरह से समझते हैं कि .NET Framework, .NET Platform.NET Programming Languages क्या हैं और इनके बीच मुख्‍य अन्तर क्या है और इससे पहले कि हम अगले Chapter पर Move करके C# Programming Language के Basics को समझना शुरू करें, कुछ और सामान्‍य बातें हैं, जिन्हे इसी Chapter में समझ लेना उपयोगी रहेगा।

System and Microsoft Namespaces

समान प्रकार की या समान Functionality से सम्बंधित Classes को यदि एक Single Group के रूप में Specify कर लिया जाए और इस Specified Group का एक Unique नाम दे दिया जाए, तो इस समान प्रकार की Functionality से सम्बंधित सभी Classes के Group को हम उस Specified नाम के Namespace द्वारा Represent कर सकते हैं। यानी Namespace वास्तव में समान प्रकार की Functionality से सम्बंधित Classes के Group का एक नाम मात्र होता है। .NET के Namespace को हम Java के Package के समान मान सकते हैं।

System Namespace के साथ जिन Classes को Define किया गया है, उन Classes को Platform Independent या Cross-Platform तरीके से CLR Supported किसी भी अन्‍य Operating System पर समान रूप से Use किया जा सकता है। जबकि Microsoft Namespace की Classes को केवल Windows Platform के लिए Develop किए जाने वाले Applications के लिए ही Use किया जा सकता है।

उदाहरण के लिए System.IO द्वारा Provide की जाने वाली Functionalities को CLR Supported Unix, Linux, MacOS व Windows सभी Platforms के लिए समान रूप से Use करते हुए Application Create किया जा सकता है।

लेकिन Microsoft.Win32 द्वारा Provide की जाने वाली Functionalities को केवल Windows Operating System व केवल Windows Specific API जैसे MSBuild, SQL Server, SharePoint, Visual Studio Libraries, MS-Office Products आदि के लिए Develop किए जाने वाले Application Software के लिए Use किया जा सकता है। (.NET Framework Development History)

C# in Hindiये Article इस वेबसाईट पर Selling हेतु उपलब्‍ध EBook C#.NET in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी। 

C#.NET in Hindi | Page:908 | Format: PDF

BUY NOW GET DEMO REVIEWS