Tuesday, July 17, 2012

Architecture of .Net:


Architecture of .Net:

  • Common Language Infrastructure (CLI) :  

                                                     CLI का main purpose एक language neutral platform, application development के लिए provide करना है । इसके अलावा यह exception handling , garbage collection , security और interpretability के feature को भी include करता है ।  इन features का प्रयोग करके किसी भी language मे programs को develop किया जा सकता है । .Net framework CLI का use करके इस सभी feature के provide करता है । CLI में MSIL , CLR और Machine code सभी include होते है । 

  •  Common Language Runtime:  CLR .Net मे लिखे गए प्रोग्राम के execution environment को  define करता है। यह .Net framework का important part है । जो के .Net मे लिखे गए program को execute करने मे use होता है । CLR program के compile होने के बाद बनाने वाले Byte Code जिसे की Microsoft Intermediate language भी कहते है उसे run करता है । Programmer Visual basic , C# या किसी भी अन्य language के use कर program लिखता है जिसे ही उस language का compiler Byte code मे Convert कर देता है। यह byte codes सभी languages के लिए एक समान ही होते है । इसके बाद .Net CLR इस byte code के machine code ( Native Code) मे बदल देता है । जो की execute हो जाते है ।

       इसके अलावा CLR run होते वाले प्रोग्राम के execution requirements के भी पूरा करता है। साथ ही यह user को program run करने के लिए CPU specification से free कर देता है । यह निम्नलिखित facilities provide करता है ।
·         Memory management
·         Thread management
·         Exception handling
·         Garbage collection
·         Security


  • Common Type System:
    .Net Framework मे Common Type System Computer memory मे represent होने वाले type System और उनकी values को specify करता है । यह अलग अलग language मे लिखे गए programs के बीच information को share कने मे मदद करता है। यह cross language platform के support करता है जिसके कारण यह different language मे लिखे गए programmes के बीच information share करने मे मदद करता है। यह एक object oriented model को support कर इन्हे पूरी तरह से implement करता है । इसके प्रयोग विभिन्न languages के objects को एक ही platform मे share कर देता है। जैसे C# के programs के Visual Basic के programs के साथ प्रयोग किया जा सकता है। यह objects के बीच information share करने के नियमों को define करता है। यह विभिन्न language के data types के बीच interaction provide करता है। इस प्रकार CTS .Net मे important role निभाता है ।


  • Microsoft Intermediate Language (MSIL), Common Intermediate Language (CIL), Byte Code:
MSIL को Common Intermediate Language भी कहते है। यह एक low level human readable Programming Language है। जो के .नेट के Common Language Infrastructure मे available होती है। यह language .NET support करने वाली language के compile होने पर generate होती है। इस language को CLR के द्वारा run किया जाता है। इसे byte codes भी कहते है। यह object oriented assembly language होती है जो की CLR के द्वारा virtual machine पर execute हो जाते है।
       .Net मे use होने वाली सभी language compile होने पर language specific compiler के द्वारा MSIL (CIL ) मे convert हो जाते है। यह direct machine code मे नहीं बदलती हैं । CIL एक CPU और platform independent code होते है। इसके बाद यह byte codes .Net CLR के द्वारा machine code मे convert होकर program को execute कर देते है। MSIL codes किसी भी environment जो की .Net framework को support करता है उस पर execute किए जा सकते हैं।
  • Executing MSIL:

·         Source code Language specific compiler के द्वारा Common Intermediate language मे convert हो जाते हैं।
  • ·         CIL के according .Net assembly बना देता है।
  • ·         यह byte codes CLR मे execute होने के लिए चले जाते है।
  • ·         CLR इन्हे machine code मे convert कर execute कर देता है।


  • Assemblies and Class Libraries:
    • Assemblies:  assemblies’ .Net framework के महत्वपूर्ण हिस्सा है। इस program के run होने के लिए कई प्रकार की information contain करता है। यह निम्न works के perform करता है।
      •  यह common language runtime के द्वारा execute होने वाले कोडेस को contain करता है। Microsoft Intermediate language के code बिना assembly के execute नहीं किए जा सकते है। यह एक associated assembly बना देता है।
      •  यह program की security limitations के define करता है। यह प्रोग्राम को execute करने के लिए request और permission को process करता है।
      • यह type limitations के बनाता है। सभी identify किए गए Types assembly मे store हो जाते है।
      • यह version limitation को define करता है।
      • यह deployment unit को create करता है।
      •  यह program के side by side execution को support करता है।

    • Class Library: Microsoft base class library .Net framework का सबसे important part है । यह एक library है जो के .Net की सभी कम्प्युटर languages के द्वारा use की जा सकती है। यह सभी के लिए common library provide करता है। इस library मे बहुत से common functions, methods और classes होती है जो सभी .Net languages के लिए common होती है। यह functions और methods विभिन्न कार्यों के लिए use की जाती है जैसे: file reading and writing, database interaction, XML documentation etc.


                    कुछ important .Net Library classes और namespaces निम्नलिखित है।
      • System: यह programming के basic आवश्यकताओ को पूरा करने के लिए use होतीहै. यह data types और conversion functions contain करती है जैसे : string , Boolean , datetime etc.
      • System. Collection: यह सभी common containers और collections के define करती है। जैसे: stack, list, queue etc.
      • System. IO: यह programmer को Read और writing functions provide करती है। जो सभी प्रकार के Input और Output के लिए प्रयोग की जाती है।
      • System. Configuration: यह configuration data को handle करने के लिए functions और methods provide करती है।
      • System. Data: यह database related functions और methods प्रोवाइड करती है। जिसे के ADO.NET भी कहते हैं।
      • System. Drawing: यह graphical designing functions और methods के लिए प्रयोग की जाती है। यह विभिन्न methods जैसे DrawRectangle , DrawCircle , Pen , Brush etc. provide करता है।
      • System. Windows: यह Class सभी windows operating System related functions और methods के लिए प्रयोग की जाती है।
      • System. Windows. Forms: यह  windows form के सभी controls , methods और functions के लिए प्रयोग की जाती है।  




6 comments:

Contact us

Name

Email *

Message *