Microsoft.NET platvorm. Ülevaade arhitektuurist ja võimalustest. NET Frameworki tehnoloogia ülevaade Võrguraamistiku põhikomponendid

.NET Framework on integreeritud Windowsi komponent, mis toetab uue põlvkonna rakenduste ja XML-veebiteenuste loomist ja käitamist. .NET Framework loodi järgmisi eesmärke silmas pidades.

· Pakkuge järjepidevat objektorienteeritud programmeerimiskeskkonda objektikoodi lokaalseks salvestamiseks ja täitmiseks, Internetis levitatava koodi kohalikuks täitmiseks või kaugkäivitamiseks.

· Pakkuge koodikäivituskeskkonda, mis minimeerib konflikte tarkvara juurutamisel ja versioonihalduses.

· Koodi täitmiskeskkonna pakkumine, mis tagab koodi ohutu täitmise, sealhulgas tundmatute või vähem kui täielikult usaldusväärsete kolmandate isikute poolt loodud koodi.

· Pakkuge koodikäituskeskkonda, mis väldib skriptimise või tõlgendatud koodikäituskeskkondade jõudlusprobleeme.

· Pakkuda ühtset arendajakogemust eri tüüpi rakendustes, nagu Windowsi rakendused ja veebirakendused.

· Töötada välja tööstusstandarditel põhinev koostalitlusvõime, mis tagab .NET Frameworki koodi integreerimise mis tahes muu koodiga.

NET Frameworki kaks peamist komponenti on ühiskeele käitusaeg (CLR) ja .NET Frameworki klassiteek. NET Frameworki tuum on CLR. Käitusaega võib pidada agendiks, mis haldab koodi käitusajal ja pakub põhiteenuseid, nagu mäluhaldus, lõimehaldus ja kaugjuhtimine. Samal ajal kehtestatakse ohutuse ja töökindluse tagamiseks ranged tippimistingimused ja muud koodi täpsuse kontrollimise viisid. Tegelikult on käitusaja põhiülesanne koodi haldamine. Koodi, mis pääseb juurde käitusajale, nimetatakse hallatud koodiks ja koodi, mis ei pääse juurde käitusajale, nimetatakse haldamata koodiks. Teine .NET Frameworki põhikomponent, klassiteek pakub täielikku objektorienteeritud tüüpide kogumit, mida kasutatakse rakenduste arendamiseks, alates tavapärastest käsurealt või graafilise kasutajaliidese abil käivitatavatest rakendustest kuni rakendusteni, mis kasutavad uusimad ASP.NET-tehnoloogia võimalused. , nagu veebivormid ja XML-veebiteenused.

.NET Framework võib majutada mittehallatavaid komponente, mis laadivad ühiskeele käitusaja (CLR) oma protsessidesse ja käitavad hallatud koodi, luues programmeerimiskeskkonna, mis võimaldab nii hallatud kui ka haldamata täitmist. .NET Framework ei paku mitte ainult mitut põhikäivitusaega, vaid toetab ka põhikäitusaegade kolmanda osapoole arendamist.


Näiteks ASP.NET hostib käitusaega, et pakkuda hallatava koodi jaoks skaleeritavat serveripoolset keskkonda. ASP.NET töötab otse käitusajaga, et lubada ASP.NET-i rakendusi ja XML-veebiteenuseid, millest mõlemat käsitletakse selles teemas hiljem.

Internet Explorer on näide haldamata rakendusest, mis hostib käitusaega (MIME tüüpi laienduse kujul). Internet Exploreri kasutamine käitusaja hostimiseks võimaldab teil manustada hallatud komponente või Windowsi vormide juhtelemente HTML-dokumentidesse. Käitusaja sellisel viisil hostimine muudab hallatud mobiilikoodi (sarnaselt Microsoft® ActiveX®-i juhtelementidega) võimalikuks, kuid oluliste täiustustega, mida suudab pakkuda ainult hallatud kood, näiteks poolusaldusväärne täitmine ja isoleeritud failisalvestus.

Järgmine illustratsioon näitab üldkeele käitusaja ja klassiteegi seost teie rakenduste ja kogu süsteemiga. Illustratsioon näitab ka seda, kuidas hallatud kood töötab suuremas arhitektuuris.

NET Framework kontekstis

Järgmistes jaotistes kirjeldatakse üksikasjalikumalt .NET Frameworki põhikomponente ja funktsioone.


Näiteks ASP.NET hostib käitusaega ja pakub serveripoolse hallatava koodi jaoks skaleeritavat keskkonda. ASP.NET töötab otse käitusajaga, et võimaldada selles teemas hiljem käsitletud ASP.NET-i rakenduste ja XML-veebiteenuste käitamist.

Internet Explorer on näide haldamata rakendusest, mis hostib käitusaega (MIME tüüpi laienduste kujul). Käitusaja hostimine Internet Exploreris võimaldab manustada hallatud komponente või Windowsi vormide juhtelemente HTML-dokumentidesse. See keskkonnapaigutus võimaldab käitada hallatud mobiilikoodi (sarnaselt Microsoft® ActiveX®-i juhtelementidega), kuid tänu hallatava koodi olulistele eelistele, nagu osalise usaldusega käivitamine ja isoleeritud failisalvestus.

Järgmine joonis näitab, kuidas ühise keele käitusaeg ja klassiteek suhtlevad kasutajarakenduste ja kogu süsteemiga. Joonis näitab ka, kuidas hallatud kood töötab laiemas arhitektuuris.

NET Framework kontekstis

Järgmistes jaotistes kirjeldatakse üksikasjalikumalt .NET Frameworki põhikomponente ja -funktsioone.

See on hetkel üks populaarsemaid, multifunktsionaalsemaid ja aktiivselt arenevaid programmeerimiskeeli. Selle abiga saate arendada peaaegu iga tarkvara, alustades lihtsatest võiduvormidest rakendusi, suurtele klient-serveri veebirakendustele või isegi mobiilirakendustele ja arvutimängudele. Ja see töötab .NET Frameworki platvormil. Mõtleme välja, mis see on.

Vaadake minu videot .NET Frameworki ja C# CLR-i käitusaja kohta

C# programmeerimiskeel on suhteliselt uus, kuid on juba pälvinud usalduse. Esimese versiooni väljalaskmine toimus 2002. aasta veebruaris. Keele uusim versioon kirjutamise ajal on C# 7.2, mis anti välja 16. augustil 2017.

C# keele süntaks, nagu nimigi viitab, on osa C-tüüpi keelte perekonnast ja sarnaneb teiste selle rühma populaarsete keeltega (C++, Java). Seega, kui olete mõne neist keeltest juba tuttav, on teil palju lihtsam C# programmeerimiskeelt omandada.

Kuna C# on objektorienteeritud keel, toetab see pärimist, polümorfismi, kapseldamist, tugevat muutujate tippimist, operaatori ülekoormust ja palju muud. Kõiki neid kontseptsioone käsitletakse üksikasjalikult järgmistes artiklites. Tänu programmeerimiskeelt kasutava objektorienteeritud disaini paradigma kasutamisele on üsna lihtne arendada suuremahulisi ja samas paindlikke projekte. Samal ajal antakse regulaarselt välja C# keele uusi versioone, mis lisavad uusi funktsioone, et lihtsustada arendaja elu, suurendada arenduskiirust ning parandada rakenduse jõudlust ja töökindlust.

.NET platvorm

.NET Framework on ettevõtte tarkvaraplatvorm Microsoft võimaldab arendada erinevates programmeerimiskeeltes, kuna kõik keeled kasutavad ühte ühist keele täitmiskeskkonda Common Language Runtime (CLR). Seega on .NET-platvormi peamised võimalused järgmised:

  • Platvormideülene– .NET Framework toetab enamik kaasaegseid operatsioonisüsteeme Windows, samuti on võimalik luua Linuxi süsteemide toetatud rakendusi ja isegi mobiilirakendusi.
  • Mitmekeelne– kuna kasutatavas programmeerimiskeeles kirjutatud lähtekood tõlgitakse Common Intermediate Language (CIL) koodiks, on võimalik arendada mis tahes toetatud programmeerimiskeeles ja isegi kasutada ühes lahenduses erinevaid programmeerimiskeeli. Kõige populaarsemad toetatud keeled on C#, VB.NET, C++, F#.
  • Lai klasside ja tehnoloogiate raamatukogu– vajalike probleemide lahendamiseks on tohutul hulgal kasutusvalmis raamatukogusid. Sageli pole rakenduse madalatasemelist loogikat üldse vaja rakendada, piisab valmislahenduse kasutamisest, mis on mugavalt tarnitud nugeti paketihalduri kaudu. Lisaks võimaldab .NET platvorm praktiliselt igat tüüpi tarkvara lihtsalt arendada.

Hallatud ja haldamata kood. JIT-i koostamine

Hallatud kood on kood, mida haldab ühiskeele käitusaeg (CLR). See tähendab, et juhtimiskeskkonnal on võimalus peatada rakenduse täitmine ja hankida konkreetset teavet rakenduse oleku kohta igal ajal selle täitmise ajal. Kasutatava programmeerimiskeele lähtekood tõlgitakse kontrollitud CIL-koodiks (nimetatakse ka kõrgetasemeliseks assembleriks).

Pärast klassiteegi või rakenduse loomist jätkatakse lähtekoodi salvestamist CIL-is. Ja kui käivitate rakenduse või pääsete ligi teegile, käivitatakse Just-In-Time ( JIT) rakenduse kompileerimine masinkoodiks, mis on spetsiifiline selle keskkonna jaoks, milles rakendust käivitatakse. Sel juhul on oluline omadus, et kompileeritakse ainult see osa rakendusest või teegist, millele juurde pääseb (ja muidugi ka ühendused). See võimaldab teil suurendada süsteemi jõudlust ja säästa ressursse.

Haldamata kood- See on kood, mis tõlgitakse otse masinas käivitatavaks koodiks ja mida käivitab otse operatsioonisüsteem.

Lisaks soovitan artiklit lugeda. Ja tellige ka VKontakte grupp, Telegram ja YouTube'i kanal. Programmeerijatele on veelgi kasulikku ja huvitavat.

Head päeva kõigile. Aleksei Gulynin võtab ühendust. Selles esimeses C#-i artiklis tahaksin rääkida platvormist .NET Framework. C# keel ja platvorm ise ilmusid esmakordselt 2002. aastal. Nende loomise põhieesmärk oli pakkuda COM programmeerimismudeliga võrreldes lihtsamat, skaleeritavamat ja mis kõige tähtsam – võimsamat programmeerimismudelit. NET Frameworki platvormi põhjal saate luua rakendusi Windowsi operatsioonisüsteemide perekonna jaoks, samuti saate luua rakendusi Unixile, Linuxile ja Mac OS X-ile. Allpool on lühiülevaade .NET Frameworki toetatud funktsioonide loend:

1) Võimalus suhelda olemasoleva koodiga. See funktsioon võimaldab kompileerida näiteks COM-i binaarkomponente ja .NET-komponente.
2) Erinevate programmeerimiskeelte tugi. .NET rakendusi saab luua kasutades erinevaid programmeerimiskeeli nagu C#, Visual Basic, F#.
3) Üldine täitmismehhanism. Asi on selles, et .NET-il on teatud tüüpide komplekt, millest saavad aru kõik .NET-i toetavad keeled.
4) Keele integreerimine. Saate kirjutada klassi Visual Basicus ja seejärel laiendada seda C#-s.
5) Suur baasklasside raamatukogu. Tänu sellele teegile võime unustada API-de madala taseme kõnede rakendamise keerukuse ja keskenduda lihtsalt programmeerimisele.
6) Lihtne kasutuselevõtu mudel. Erinevalt COM-i teegist ei pea .NET olema registris registreeritud. See võib eksisteerida kui assembly.dll.

Võib-olla kirjutasin siin mõnest arusaamatust asjast, näiteks klassidest, API liidestest. Sellega ei tasu veel vaeva näha. Põhimõtteliselt saab programmeerida ka seda kõike teadmata, aga nii nagu me õpime, lahjendame praktikat veidi teooriaga.
Teooria täielikuks lõpetamiseks räägin teile .NET-platvormi peamistest ehitusplokkidest.

1) CLR (Common Language Runtime) – levinud keele käituskeskkond. Selle keskkonna esmane ülesanne on laadida ja hallata .NET-objekte (et programmeerija ei peaks seda käsitsi tegema). Lisaks hoolitseb CLR mitmete madalatasemeliste detailide eest, nagu mäluhaldus, rakenduste paigutus ja rakenduste turvalisusega seotud kontrollide teostamine.
2) CTS (Common Type System) - levinud tüüpi süsteem. See kirjeldab kõiki võimalikke andmetüüpe, mida käitusaeg (CLR) toetab. Peate teadma, et üks keel ei pruugi toetada absoluutselt kõiki CTS-i spetsifikatsioonis määratletud funktsioone. Seetõttu on olemas:
3) CLS (tavakeele spetsifikatsioon). See kirjeldab levinumate tüüpide ja alamhulka, mida kõik .NET Frameworki programmeerimiskeeled peavad toetama.

Lisaks CLR ja CTS/CLS spetsifikatsioonidele pakub .NET platvorm baasklassi raamatukogu, mis on saadaval kõikidele .NET-i programmeerimiskeeltele. See teek võimaldab kõrgel tasemel hallata näiteks failide I/O-d, graafikat, erinevaid välisseadmeid, andmevooge ja erinevaid teenuseid (ilma juurutamise üksikasjadele mõtlemata).

Ma ei ole teooria kirjutamise meister, seega ütlen, et neile, kes soovivad .NET-i filosoofiat paremini mõista, soovitan lugeda Andrew Troelseni raamatu “The C# 5.0 Programming Language and the .NET 4.5 Platform, esimene peatükk, avaldatud 2013. See .NET-platvormi kokkuvõte on võetud sellest raamatust. Probleem, millega selle raamatuga kokku puutusin, seisneb selles, kui raske on materjali esitada algajale. Sa ei pruugi nii arvata, see on lihtsalt minu arvamus.

Noh, mu sõbrad, kas olete ikka tahtnud C#-i õppida? Lähme siis julgelt edasi, luban, et edaspidi on minimaalselt teoreetilisi artikleid (kui ainult C# õppimise alguses), ainult üks praktika. Kui vajate teooriat, suitsetage Andrew Troelseni raamatut.
Kui vajate klassi või selle meetodi kohta teavet, minge otse lehele

C#
  • Ühise keele käitusaeg) ja klassi raamatukogu...
  • .NET Framework ja CTS-i spetsifikatsioon
    C# keel ja selle tugi on praegu seotud Microsofti välja töötatud .NET Frameworkiga. Nimetatud platvorm (vt.) sisaldab järgmist: tavakeele käitusaeg (CLR - Ühise keele käitusaeg Raamklassi raamatukogu). Tuleb märkida...
    (PROGRAMMEERIMINE. ALUSKURSUS C#)
  • .NET Frameworki ja Visual Studio installimine
    Windows 7 ja 8 puhul on .NET platvorm juba saadaval ja pole vaja midagi installida. Rakenduste arendamiseks .NET platvormil tuleb installida Visual arendussüsteem C# 2012 (või 2013) Express Edition – Visual Studio arenduskeskkonna tasuta versioon (lühem, kuid peaaegu...
    (Objektorienteeritud programmeerimine)
  • C# TÜÜBID JA .NET FRAMEWORK TÜÜBID
    C# keel ja selle tugi on praegu seotud Microsofti välja töötatud .NET Frameworkiga. Nimetatud platvorm (vt.) sisaldab järgmist: tavakeele käitusaeg (CLR - Ühise keele käitusaeg) ja klassi raamatukogu...
    (PROGRAMMEERIMINE. ALUSKURSUS C#)
  • .NET Framework ja CTS-i spetsifikatsioon
    C# keel ja selle tugi on praegu seotud Microsofti välja töötatud .NET Frameworkiga. Nimetatud platvorm (vt.) sisaldab järgmist: tavakeele käitusaeg (CLR - Ühise keele käitusaeg) ja klassiraamatukogu (FCL - Raamklassi raamatukogu). Tuleb märkida...
    (PROGRAMMEERIMINE. ALUSKURSUS C#)
  • NET Framework on keskkond komponentidel (juhtelementidel) põhinevate hajutatud rakenduste toetamiseks, arendamiseks ja käitamiseks.

    Rakendusi (programme) saab arendada erinevates programmeerimiskeeltes, mis seda tehnoloogiat toetavad.

    NET Framework pakub:

    • erinevate programmeerimiskeelte ühine kasutamine;
    • programmide turvalisus ja kaasaskantavus;
    • Windowsi platvormil põhinev üldine programmeerimismudel.

    2. Millised on .NET Frameworki põhikomponendid?

    Programmeerimise seisukohast koosneb .NET Framework kahest põhikomponendist.

    • ühiskeelne täitmiskeskkond CLR (Common Language Runtime);
    • baasklassi raamatukogu.

    Ühise keele käitusaeg (CLR) lahendab .NET-tüüpide automaatse tuvastamise, nende tüüpide laadimise ja haldamise probleemid. CLR haldab mäluhaldust, rakenduste hooldust, lõime töötlemist ja rakendab arvukalt turvalisusega seotud kontrolle.

    Baasklassi teek sisaldab erinevate primitiivide määratlust, milleks võivad olla: vood, graafilised API-d, andmebaasi juurutused, faili I/O jne.

    3. Mis on Common Language Runtime (CLR) tööpõhimõte?

    Ühise keele käitusaeg (CLR) haldab .NET-koodi täitmist.

    Pärast programmi C# (või mõnes muus keeles) kompileerimist luuakse fail, mis sisaldab spetsiaalset pseudokoodi või baitkoodi (ja mitte käivitatavat faili, nagu see oli varem). Seda pseudokoodi nimetatakse (MSIL) või Common Intermediate Language (CIL). See pseudokood on Microsoft Intermediate Language.

    CLR-i põhieesmärk on muuta MSIL-i vahekood programmi täitmise ajal käivitatavaks koodiks.

    Mis tahes programmi, mis on kompileeritud MSIL-i pseudokoodile, saab käivitada mis tahes keskkonnas, mis sisaldab CLR-i rakendust. See võimaldab programme .NET Frameworkis kaasas kanda.

    Riis. 1. Lähtekoodi teisendamine MSIL-i (CIL või IL) koodiks ja koostefaili (*.dll või *.exe) loomine

    Pärast seda muutub pseudokood käivitatavaks koodiks. Seda teeb JIT-i kompilaator. JIT (Just-in-time) koostamine on koostamine lennult.

    CLR vastutab selle eest, kuhu koost paigutada.

    Assambleesse paigutatud nõutud tüüp (nt klass ArrayList või muu tüüp) määratakse binaarfailis (*.dll või *.exe), lugedes faili metaandmeid.

    Seejärel asetab CLR komplektist loetud tüübi mällu.

    Seejärel muudab CLR CIL-koodi sobivateks juhisteks, mis on kohandatud konkreetsele platvormile (olenevalt arvutist, operatsioonisüsteemist jne). Lisaks tehakse selles etapis vajalik ohutuskontroll.

    Viimane asi, mida teha, on käivitada nõutud programmi kood.

    4. Mis on MSIL-i vahekeel ( Microsofti kesktaseme keel) või CIL (Common Intermediate Language)?

    Algul nimetati vahepealset pseudokoodi keelt Microsofti kesktaseme keel(MSIL). Hiljem (.NET-i viimastes versioonides) muudeti see nimi Common Intermediate Languageks (CIL – Common Intermediate Language). Lühendid MSIL, CIL ja IL (Intermediate Language) tähendavad sama asja.

    Vahekeel CIL (või MSIL) moodustatakse pärast programmi kompileerimist mõnes .NET Frameworki toetavas programmeerimiskeeles.

    MSIL on pseudokood. MSIL määratleb juhiste komplekti, mis:

    • saab üle kanda erinevatele platvormidele;
    • ei sõltu konkreetsest protsessorist.

    Tegelikult on MSIL kaasaskantav montaažikeel

    5. Mis on koost .NET-tehnoloogia seisukohast?

    Assambleed on failid laiendiga *.dll või *.exe, mis sisaldavad .NET-i platvormist sõltumatuid vahekeele (IL) juhiseid ja tüübi metaandmeid.

    Koost luuakse .NET-i kompilaatori abil. Koost on suur kahendobjekt.

    Koost on loodud nimeruumide säilitamiseks. Nimeruumid sisaldavad tüüpe. Tüübid võivad olla klassid, delegaadid, liidesed, loendused, struktuurid.

    Koost võib sisaldada suvalist arvu nimeruume. Iga nimeruum võib sisaldada suvalist arvu tüüpe (klassid, liidesed, struktuurid, loendid, delegaadid).

    6. Mida komplektid sisaldavad?

    Assambleed sisaldavad CIL-koodi (MSIL-koodi või IL-koodi) ja metaandmeid.

    CIL-kood kompileeritakse konkreetse platvormi jaoks ainult siis, kui sellele pääseb juurde .NET käitusajast.

    Metaandmed kirjeldavad üksikasjalikult iga tüübi funktsioone, mis eksisteerivad antud .NET-i binaarüksuses.

    Näiteks Kui loote Windowsi vormide rakenduse C#-s, luuakse fail Assembly.info. See fail asub programmi põhikausta suhtes alamkaustas Atribuudid. See fail sisaldab üldist teavet koostu kohta.

    7. Mis on manifest?

    Manifest on koostu enda kirjeldus, kasutades metaandmeid.

    Manifest sisaldab järgmist teavet:

    • koostu praeguse versiooni kohta;
    • teave kultuuri kohta (liini- ja graafiliste ressursside lokaliseerimine);
    • kõigi korrektseks toimimiseks vajalike väliste koostude linkide loend.

    8. Lähtekoodi, .NET-i kompilaatori ja .NET-i käitusmootori vahelise koostoime skeem.

    Programmeerija loob rakenduse lähtekoodi .NET tehnoloogiat toetavas keeles (C#, C++/CLI, Visual Basic .NET jne). Rakendus luuakse mõnes programmeerimiskeskkonnas, näiteks Microsoft Visual Studio. Kompilaator genereerib koostu – faili, mis sisaldab CIL-i juhiseid, metaandmeid ja manifesti.

    Pärast selle rakenduse käivitamist teatud arvutis (teatud platvormil) käivitatakse .NET-i käitusmootor. Esiteks tuleb arvutisse installida üks (vähemalt) .NET Frameworki versioonidest.

    Kui lähtekood kasutab baasklassi teeke (näiteks komplektist mscorlib.dll), laaditakse need klassilaaduri abil.

    JIT-i kompilaator koostab koostu, võttes arvesse (linkides) selle arvuti riist- ja tarkvarafunktsioone, millel rakendus töötab.

    Pärast seda rakendus käivitub.

    Joonis 2. Lähtekoodi, kompilaatori ja .NET käitusmootori vaheline seos

    9. Mis tüüpi sõlmed on olemas?

    Koosteid on kahte tüüpi:

    • ühe faili komplektid;
    • mitme faili komplektid.

    Koostu, mis koosneb ühest moodulist (*.dll või *.exe), nimetatakse üksikfailiks. Ühefailikoostised paigutavad kõik vajalikud CIL-juhised, metaandmed ja manifestid ühte täpselt määratletud paketti.

    Koostu, mis koosneb paljudest .NET-i kahendkoodifailidest, nimetatakse mitmefaililiseks koostuks. Kõiki neid faile nimetatakse mooduliteks.

    Mitme failiga koostu puhul on üks moodulitest peamine (esmane).

    10. Milline fail sisaldab MS Visual Studio teegi põhikoostu?

    Põhikoost asub failis “mscorlib.dll”.

    11. Mis on üldine CTS tüüpi süsteem?

    CTS (Common Type System) – tüübisüsteem, mis sisaldab kõigi võimalike andmetüüpide ja programmikonstruktsioonide täielikku kirjeldust, mida toetab üldkeele käitusaegne CLR. Samuti kirjeldatakse, kuidas need üksused saavad üksteisega suhelda.

    Tüübid võivad olla klassid, liidesed, struktuurid, loendused, delegaadid.

    12. Mis on ühise keele spetsifikatsiooni CLS eesmärk?

    Nagu teate, ei toeta kõik .NET-iga ühilduvad programmeerimiskeeled CTS-tüüpi süsteemi funktsioone. Sel eesmärgil kasutatakse ühtset keelespetsifikatsiooni CLS (Common Language Specification).

    CLS-i eesmärk on kirjeldada ainult seda levinud tüüpide ja alamhulka, mida aktsepteerivad absoluutselt kõik .NET-i toetavad programmeerimiskeeled.

    13. Millised programmeerimiskeeled toetavad .NET-tehnoloogiat?

    MS Visual Studio rakenduste arendussüsteemis toetavad .NET tehnoloogiat järgmised programmeerimiskeeled: C#, Visual Basic .NET, C++/CLI, JScript .NET, F#, J#.

    NET-tehnoloogia kasutamiseks tuleb arvutisse installida tarkvara Microsofti .NET Frameworki tarkvaraarenduskomplekt(SDK) või Microsoft Visual Studio mis tahes versiooni.

    14. Mis on nimeruum?

    Nimeruum on mõeldud ühendama tüüpide rühma, mis on semantilisest vaatepunktist üksteisega seotud. Tüübid asetatakse sõlmedesse (assamblee). Tüübid tähendavad klasse, delegaate, liideseid, struktuure ja loendeid.

    Nimeruumi nimede näited:

    Süsteem Süsteem.Andmed System.IO Süsteem.Kogud System.Treading.Tasks

    Näiteks System.Data nimeruum sisaldab põhitüüpe andmebaasidega töötamiseks ja System.Collections nimeruum sisaldab kogudega töötamise põhitüüpe.

    15. Kuidas kuvada MS Visual Studios koosluste, nimeruumide ja tüüpide sisu?

    Microsoft Visual Studio süsteemis on utiliit Object Browser, mida kutsutakse välja menüüst Vaade (joonis 3).

    Riis. 3. Objektibrauseri utiliidi helistamine

    See avab objektibrauseri akna, kus kuvatakse konkreetses tehnoloogias kasutatavad koostud.

    Joonisel 4 on kujutatud sõlmede loend, mida kuvatakse tehnoloogias ".NET Framework 4". Koost nimega "mscorlib" on esile tõstetud.

    Riis. 4. Objektibrauseri aken, kus on esile tõstetud koost mscorlib.dll

    Kui laiendate mscorlib-koostu sisu (“ + "), siis kuvatakse selle koostu kõigi nimeruumide loend (joonis 5). Nagu jooniselt näha, sisaldab koost nimeruume Microsoft.Win32, System, System.Collections, System.Collections.Concurrent ja paljusid teisi.

    Riis. 5. mscorlib-koost ja selles sisalduvate nimeruumide loend

    Kõiki nimeruume laiendatakse samal viisil. Nimeruumid kirjeldavad tüüpe. Tüübid kirjeldavad meetodeid, omadusi, konstante jne.

    Joonisel 6 on kujutatud System.IO nimeruumist pärit BinaryReaderi klass. Ilmselt rakendab klass meetodeid nimega BinaryReader(), Close(), Dispose(), FillBuffer() ja teised.

    Riis. 6. BinaryReader klassi sisu

    16. Kuidas ühendada nimeruumi C# programmis?

    Nimeruumi ühendamiseks kasutage kasutavat märksõna