Concepte de bază ale tehnologiei

1. Ce este un mediu .NET Framework?

NET Framework servește ca un mediu pentru a sprijini dezvoltarea și executarea aplicațiilor distribuite, care se bazează pe componentele (control).

Aplicații (program) pot fi dezvoltate în diferite limbaje de programare care susțin această tehnologie.

NET Framework prevede:

  • Schimbul de diferite limbaje de programare;
  • siguranta si tolerabilitatea programelor;
  • model comun de programare bazat pe platforma Windows.
2. Care sunt principalele componente ale .NET Framework?

Dintr-o perspectivă de programare. NET Framework este format din două componente principale:

  • Executive Common Language Miercuri CLR (Common Language Runtime);
  • clasa biblioteca de bază.

Limba comună CRJ rezolvă problema de detectare automată a tipurilor .NET. Descărcați aceste tipuri și controlul lor. CLR asigură gestionarea memoriei, întreținerea aplicației, fluxurile de prelucrare și pune în aplicare numeroase controale legate de securitate.

bibliotecă de clasă de bază include determinarea diferitelor primitivele care ar putea fi: fluxuri de grafică API-interfețe, baze de date fișier de implementare de intrare-ieșire, și așa mai departe.

3. Care este principiul comun language runtime CLR (Common Language Runtime)?

Comună CRJ limba de execuție gestionează executarea de cod .NET.

După compilarea programului privind C # (sau orice altă limbă) creează un fișier care conține un tip special de pseudo-cod sau bytecode (fișier nu executiv așa cum a fost înainte). Acest Microsoft Intermediate Language numit pseudo (MSIL) sau Limba comună Intermediar (CIL). Acest pseudo-cod are limbaj intermediar Microsoft.

Scopul principal al CLR - rândul său, codul MSIL intermediar în executarea de cod în timpul rulării.

Orice program care este compilat în pseudo-cod MSIL. Aceasta poate fi realizată în orice mediu, care conține o implementare CLR. Acesta oferă un program de figurativ în .NET Framework.

Fig. 1. Procesul de conversie a codului sursă într-o limbă de cod MSIL (CIL sau IL) și crearea unui fișier de construcție (* .dll sau .exe *)

După aceea, pseudo transformat în cod executabil. Se pune în aplicare JIT -kompilyator. JIT (Just-in-time) -kompilyatsiya - "acoperi", o compilație a

CRJ Runtime Environment este responsabil pentru determinarea locului de locație de asamblare (montaj).

Tipul solicitat, care este aranjată în adunare (de exemplu, clasa ArrayList sau alt tip) definit în fișierul binar (* .dll sau * Exe) folosind metadatele de citire a fișierului.

După aceea CRJ alocă o citire de tipul de asamblare.

Apoi CRJ convertește CIL-cod în instrucțiunile corespunzătoare, care se adaptează la platforma specifice (în funcție de PC-ul, sistemul de operare, etc.). În plus, în această etapă, au loc verificările necesare pentru siguranță.

Finala are loc executarea codului solicitat.

4. Ce este un limbaj intermediar MSIL (Microsoft Intermediate Language) și CIL (Common Language intermediar)?

Primul pseudo limbaj intermediar numit Microsoft Intermediate Language (MSIL). Mai târziu (în versiunile recente ale .NET) acest nume a fost schimbat la Intermediarul Common Language (CIL - Common Intermediate Language). Abrevieri MSIL. CIL și IL (Intermediate Language) înseamnă același lucru.

CIL Limba intermediară (sau MSIL) este format după elaborarea programului într-un limbaj de programare care suporta infrastructura .NET Framework.

MSIL are un pseudo-cod. MSIL definește un set de instrucțiuni care:

  • pot fi transportate pe platforme diferite;
  • nu depind de un procesor specifice.

De fapt, MSIL - este un limbaj de asamblare portabil

5. Ce este un ansamblu (de asamblare) din punct de vedere al tehnologiilor .NET?

Adunarea - acestea sunt fișiere cu extensia * .dll sau .exe *. care conțin independent platforma instrucțiuni NET într-un limbaj intermediar (Intermediate Language - IL), precum și tipuri de metadate.

Ansamblul este creat folosind compilator .NET. Construiți - o pată de cerneală.

Ansamblul este conceput pentru a păstra spațiile de nume (namespace). Conține tipuri de spații de nume. Tipurile de clase pot fi, delegați, interfețe, structura enumerările.

Ansamblul poate cuprinde orice număr de namespaces. Orice spațiu de nume poate cuprinde orice număr de tipuri (clase, interfețe, structuri, enumerările, delegați).

6. Ce este plasat în ansamblul?

În ansamblurile situate -Code CIL (MSIL -Code sau IL-cod) și metadate.

CIL-cod compilat pentru o platformă specifică numai atunci când este accesată din mediul .NET runtime.

Metadatele descriu în detaliu caracteristicile fiecărui tip, care este în interiorul unităților binare NET.

De exemplu. atunci când creați un Windows Forms Application Aplicație în C # a creat Assembly.info fișier. Acest fișier este plasat în proprietățile subdosar în raport cu dosarul principal al programului. Acest fișier specifică informații generale despre ansamblul.

7. Ce este manifestul (manifest)?

Manifestul - o descriere a ansamblului în sine, cu ajutorul metadate.

Informațiile situate în manifest:

  • versiunea curentă a ansamblului;
  • Informații despre cultura (localizare litere mici și resurse grafice);
  • Lista de referințe la toate ansamblurile externe care sunt necesare pentru buna funcționare.
8. Diagrama de comunicare între sursa, compilator .NET și mecanismul de execuție .NET.

Programatorul creează codul sursă într-o limbă care acceptă tehnologia .NET (limbaj C #. C ++ / CLI. Visual Basic NET, etc). Aplicația este creată într-un mediu de programare, cum ar fi Microsoft Visual Studio. Compilatorul generează asamblare - fișier care conține CIL -instructions, metadate și manifeste.

După pornire, executarea aplicațiilor pe un computer (o platformă) la locul de muncă începe mecanismul de execuție. NET. Anterior, calculatorul trebuie să se execute o versiune de .NET Framework (cel puțin).

Dacă clasa biblioteca de bază utilizată (de exemplu, de la asamblare mscorlib.dll), acestea sunt încărcate de către încărcătorul de clasă în codul sursă.

Compilare JIT -kompilyator de asamblare următoare cu (obligatoriu) caracteristici hardware și software de calculator, care rulează aplicația are loc.

După aceasta, aplicația se execută.

Concepte de bază ale tehnologiei

Figura 2. Relația dintre codul sursă, compilator și mecanismul de NET

9. Care sunt diferitele tipuri de ansambluri?

Există două tipuri de construiește:

  • Single-asamblare;
  • asamblare multifișier.

Ansamblul, care constă dintr-un singur modul (* .dll sau .exe *) se numește un singur fișier. Un singur fișier se bazează toate -instructions necesare CIL, metadate și manifestele sunt plasate într-un pachet bine definit.

Ansamblul, care este format din mai multe fișiere de cod .NET binare. Se multifișier numit. Fiecare dintre aceste fișiere se numește un modul.

Într-un ansamblu de multifișier a modulelor este principala (primar).

10. În ceea ce fișier este amplasat ansamblul principal al MS biblioteci Visual Studio?

asamblare Home este plasat în fișierul „mscorlib.dll“.

11. Care este sistemul general al tipurilor CTS?

CTS (Common System Type) - sistem de tip, care conține o descriere completă a tuturor posibile și tipuri de date constructe de programare suportate de către executiv CRJ Common Language. Există, de asemenea, descris modul în care aceste entități pot interacționa unul cu altul.

Tipurile pot fi clase, interfețe, structuri, enumerările, delegați.

12. Care este scopul limbajului comun Specification CLS?

După cum știm, nu toate limbile care sunt compatibile cu .NET programare. poate sprijini funcționalitatea sistemului de tip CTS. În acest scop, limbajul comun CLS specificație (Common Specification Language).

Scopul CLS este o descriere a doar un subset de tipuri comune și constructe de programare, care sunt percepute absolut toate limbajele de programare care acceptă .NET.

limbaje de programare 13. Ce susținută de tehnologia .NET?

Dezvoltarea sistemului MS aplicatii .NET Visual Studio, tehnologia acceptă următoarele limbaje de programare: C #. Visual Basic .NET. C ++ / CLI. JScript .NET. F #. J #.

Pentru a putea utiliza tehnologia .NET pentru a instala software-ul pe calculator Microsoft .NET Framework Software Development Kit (SDK) sau Microsoft Visual Studio din orice versiune.

14. Care este spațiul de nume (namespace)?

Namespace este destinat pentru combinarea tipurilor de grupuri care sunt legate între ele din punct de vedere semantic. Tipuri amplasate în ansambluri (asamblare). În conformitate cu tipurile de clase sunt înțelese, delegați, interfețe, structuri, enumerările.

Exemple de spațiu de nume nume:

De exemplu, în spațiul situat numele System.Data pentru principalele tipuri de baze de date, în numele spațiale plasate System.Collections tipuri de bază pentru a lucra cu colecții.

15. Cum se imprimă conținutul adunărilor, spațiile de nume și tipuri de MS Visual Studio?

În sistemul Microsoft Visual Studio au instrument Object Browser. care este cauzat meniul Vizualizare (Figura 3).

Concepte de bază ale tehnologiei

Fig. 3. Apelați obiect utilitar Browser

Aceasta deschide fereastra Object Browser. în care va fi afișată ansamblul, care sunt utilizate într-o anumită tehnologie.

Figura 4 prezintă o listă de ansambluri care sunt afișate în tehnologia“.NET Framework 4" . Evidențiat numit de asamblare „mscorlib“.

Concepte de bază ale tehnologiei

Fig. 4. Fereastra Browser cu un obiect mscorlib.dll de asamblare dedicat

Dacă deschideți conținutul mscorlib de asamblare (semnul „+“), se va afișa o listă a tuturor spațiilor de nume de asamblare (Figura 5). După cum se vede din figură, ansamblul include nume de spațiu Microsoft.Win32. Sistem. System.Collections. System.Collections.Concurrent și multe altele.

Concepte de bază ale tehnologiei

Fig. 5. mscorlib Adunarea și o listă de spații de nume, care sunt incluse în ea

În mod similar, oricare dintre spațiile de nume dezvăluite. tipuri sunt descrise în namespaces. Tipurile metode descrise, proprietăți, constante, etc.

Figura 6 descrie clasa de spațiu de nume BinaryReader System.IO. Se pare că, într-o clasă cu metode puse în aplicare BinaryReader nume (). Close (). Aruncați (). FillBuffer (), și altele.

Concepte de bază ale tehnologiei

Fig. 6. Conținutul Clasa BinaryReader

16. Cum pot conecta spațiul de nume în programul pe C #?

cuvânt cheie namespace este utilizat pentru a conecta folosind.

Exemple: namespace conectare

După conectarea spațiu de nume, puteți accesa tipurile care sunt puse în aplicare în ele.