Facultatea de Electronica Telecomunicatii si Tehnologia Informatiei Arhitectura.Net Indrumator : Conf. dr. ing. Stefan Stancescu Masterand: ing. Codru

Documente similare
Proiectarea Sistemelor Software Complexe

PROGRAMARE ORIENTATA PE OBIECTE

Laborator 1 suport teoretic Mediul de dezvoltare Eclipse GLOSAR - Aplicaţie: program obţinut în urma aplicării operației BUILD asupra unui proiect (ve

Slide 1

Paradigme de Programare

Microsoft Word - 2 ES RO.doc

Microsoft Word - Ansamblul software CRONIS

CURS

Laborator 3

Gestionarea I/E

CL2009R0976RO bi_cp 1..1

A TANTÁRGY ADATLAPJA

2 BAZE TEORETICE ALE REȚELELOR DE CALCULATOARE CAPITOLUL 2 BAZE TEORETICE ALE REŢELELOR DE CALCULATOARE 2.1. Necesitatea standardizării (referenţierii

Lucrarea nr

Lucrarea 10

Laborator 5 - Paradigme de Programare

Entrepreneurship and Technological Management

Testare manuala: situatia in care o persoana initiaza fiecare test, interactioneaza cu el si interpreteaza, analizeaza si raporteaza rezultatele. Test

-

Ingineria Sistemelor de Programare

Concepte de bază ale Tehnologiei Informației

Microsoft Visual C++ (abreviat MSVC) is a commercial integrated development environment (IDE) product engineered by Microsoft for the C, C++, and C++/

PowerPoint Presentation

e-learning Agronomie Platforma de e-learning Versiunea: Ghid de utilizare Beneficiar: UNIVERSITATEA DE STIINTE AGRONOMICE SI MEDICINA VETERINARA

Facultatea de Științe Politice, Administrative și ale Comunicării Str. Traian Moșoiu nr. 71 Cluj-Napoca, RO Tel.: Fax:

Laborator 4: Continuare Programare Orientată pe Obiecte Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 29 octombrie 2011

Microsoft Word - O problema cu bits.doc

7 Pasi simpli pentru a avea succes online Sunteti pasionat de marketingul digital si vreti sa va creati propriul site sau blog cu care sa faceti bani,

Interfețe și Protocoale de Comunicații Arduino-Port Paralel Arduino. Laborator 1- Portul Paralel 1 Caracteristici generale Arduino UNO este o placă de

(Microsoft PowerPoint SIBIUEVIDENTA [Doar \356n citire])

Platforma 5. 1 Introducere in MSSQL Introducere Pe parcursul ultimilor ani, se poate observa o cuplare a limbajelor de programare majore cu tipuri de

Prezentarea calculatorului

Manual de utilizare a Sistemului Informațional al Institutului Național al Justiției (SI INJ) intranet.inj.md Ver.2 Manual de utilizare a Sistemului I

PPSD

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior Universitatea Alexandru Ioan Cuza din Iaşi 1.2 Facultatea Facultatea de

Laborator 9: Fire de execuţie Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 20 noiembrie 2011

FIŞA DISCIPLINEI

Discipline aferente competenţelor Facultate: Facultatea de Electronică şi Telecomunicaţii Universitate: UNIVERSITATEA POLITEHNICA DIN TIMIȘOARA Domeni

Anexa nr. 2 FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior UNIVERSITATEA DE VEST TIMISOARA 1.2 Facultatea FIZICA 1.3 De

Anexa nr. 2 FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior UNIVERSITATEA DE VEST TIMISOARA 1.2 Facultatea FIZICA 1.3 De

Microsoft Word - Curs_09.doc

Utilizarea Internetului in Afaceri FSEGA, UBB Lect.univ.dr. Daniel Mican LABORATOR 3. Achizitionarea domeniilor web si a

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ Universitatea Babeş-Bolyai Cluj-Napoca superior 1.2 Facultatea Facultatea de Mate

Paradigme de programare

Microsoft Word - barcan.doc

Microsoft Word - Curs_08.doc

Ghid de utilizare pentru Platforma E-Admitere intranet.inj.md

FD Informatica

Microsoft PowerPoint - TDS5-RO.ppt

Chertif Ionuț - Andrei Prietenul meu, calculatorul CLASA a V - a, 1 ora pe săptămână ARGUMENT Transformările societăţii româneşti din ultimii ani, dez

E_d_Informatica_sp_SN_2014_bar_10_LRO

INFORMATICĂ ŞI MARKETING

Slide 1

Unitatea: Școala Gimnazială Disciplina: Informatică și TIC Programa școlară aprobată cu OMEN nr.3393 din Profesor: prof. Clasa: a V-a A, B

PowerPoint Presentation

Pentru afacerea dumneavoastră ModernBiz Glossary 2014 Microsoft Corporation. Toate drepturile rezervate.

Sisteme de calcul în timp real

PowerPoint-Präsentation

..MINISTERUL EDUCAŢIEI NAȚIONALE ŞI CERCETARII STIINTIFICE UNIVERSITATEA DE VEST DIN TIMIȘOARA.I CENTRUL DE DEZVOLTARE ACADEMICĂ. FIŞA DISCIPLINEI (CO

COLEGIUL TEHNIC „VICTOR UNGUREANU” CAMPIA TURZII

Kein Folientitel

1. Operatii cu matrici 1 Cerinte: Sa se realizeze functii pentru operatii cu matrici patratice (de dimensiune maxima 10x10). Operatiile cerute sunt: A

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ Universitatea Babeş-Bolyai Cluj-Napoca superior 1.2 Facultatea Facultatea de Mate

PLAN DE ÎNVĂŢĂMÂNT

Microsoft Word _POO_Lab_1_Modificari_v01.htm

Programarea şi utilizarea calculatoarelor

Carduri media externe Ghidul pentru utilizator

Document2

Nr.înregistrare: 88 / Social Media in the Classroom Prof.Cucuianu Marița Colegiul Național,,Neagoe Basarab"Oltenița,jud.Călărași 2.Quizizz E

Caraivan George-Alexandru Grupa 431A Interfața driver-kernel la Linux Introducere Deși pentru unii dintre noi acest lucru poate fi o supriză, cei mai

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior Universitatea Alexandru Ioan Cuza din Iaşi 1.2 Facultatea Facultatea de

Inserarea culorilor in tabele

Ghid de Referință Explicații sumare ale operațiunilor de rutină HL-L2312D HL-L2357DW HL-L2352DW HL-L2372DN HL-L2375DW Brother recomandă să păstrați ac

U.T.Cluj-Napoca, C.U.N. Baia Mare Facultatea: Inginerie PLAN de INVĂŢĂMÂNT Domeniul: Calculatoare şi Tehnologia Informaţiei anul univ Progr

PowerPoint Presentation

9. Design patterns - Singleton, Factory, Observer Scopul acestui curs este familiarizarea cu folosirea unor pattern-uri des întâlnite în design-ul atâ

manual_ARACIS_evaluare_experti_v4

Creational design patterns

Denumire pachet training Categorie licee Avantajele programului Metode interactive utilizate Pachet II.3 - Mecatronica Licee cu clase profil de Mecatr

Slide 1

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior Universitatea Babeş-Bolyai Cluj-Napoca 1.2 Facultatea Matematică şi Info

manual_ARACIS_evaluare_experti_v5

Settlement participant system

Construirea Afacerii Internaţionale ROLURI & RESPONSABILITĂŢI

Strategia de dezvoltare a infrastructurii digit a Universității de Stat din Tiraspol APROBAT La ședința Senatului UST 2017 Context 1. Sistemul educați

Advance CAD 2016 SP1 Acest document descrie îmbunătățirile pentru Advance CAD 2016 Service Pack 1. Notă: Advance CAD 2016 Service Pack 1 este compatib

CASA CORPULUI DIDACTIC BRAILA PROGRAM DE FORMARE INFORMATICA SI TIC PENTRU GIMNAZIU CLASA A V-A SERIA 1 GRUPA 2 CURSANT: TIMOFTI V. AFRODITA COLEGIUL

Instructiuni pt. depunerea declaratiei A4200 Declaratia A4200 se construieste pornind de la o colectie de fisiere XML, reprezentand fiecare o zi fisca

SSC-Introducere-2

..MINISTERUL EDUCAŢIEI NAȚIONALE ŞI CERCETARII STIINTIFICE UNIVERSITATEA DE VEST DIN TIMIȘOARA.I CENTRUL DE DEZVOLTARE ACADEMICĂ. FIȘA DISCIPLINEI 1.

Communicate at your best - Manual - Cap 3 - RO


Microsoft Word - Politică de cookie-uri OK_v1.docx

Definiţie: modele analitice care asigură evaluarea unor caracteristici de calitate alese, bazându-se pe date din măsurători ale proiectelor software.

Ghidul pentru utilizator

Microsoft Word - Mihalca.doc

Termeni de utilizare specifici produselor

PLAN DE ÎNVĂŢĂMÂNT

Transcriere:

Facultatea de Electronica Telecomunicatii si Tehnologia Informatiei Arhitectura.Net Indrumator : Conf. dr. ing. Stefan Stancescu Masterand: ing. Codrut-Gabriel Rotaru

CUPRINS 1. Introducere POO 2. Arhitectura Framework-ului.Net 2.1 Arhitectura CLR 2.2 Limbaj gestionat/negestionat 2.3 Assemblies 2.4 Garbage Collector 3. Concluzii

1. Introducere[2] Programarea orientată pe obiecte (POO, uneori și Programarea orientată obiect, uneori denumită ca și în limba engleză, Object Oriented Programming (OOP)) este o paradigmă de programare, axată pe ideea încapsulării, adică grupării datelor și codului care operează asupra lor, într-o singură structură. Un alt concept important asociat programării orientate obiect este polimorfismul, care permite abstractizări ce permit o descriere conceptuală mai simplă a soluției. In programarea obiect orientata, totul este grupat in obiecte, in asa fel obtinand reutilizarea codului. Un obiect este o entitate ce foloseste un set de activitati relative, activitati ce descriu obiectul. Tehnic vorbind obiectul este instanta clasei. O clasa este o simpla reprezentare a tipului unui obiect. Ea descrie detaliile obiectului si este compusa din 3 lucruri : nume, attribute si operatii. Un program software poate contine multe clase ceea ce inseamna ca ele trebuie manegeriate. Pentru a reduce complexitatea sistemului, developerii folosesc diferite tehnici ce pot fi grupate dupa 4 mari concept: 1) Incapsulare 2) Abstractizare 3) Mostenire 4) Polimorfism 1) Incapsularea Incapsularea este incluziunea in obiect a tuturor resurselor necesare obiectului sa functioneze. Adica metodele si datele. Fig. 1 [1]

O clasa e ca un container, capsula sau celula ce incapsuleaza un set de metode, attribute si proprietatati. Incapsularea de asemenea permite schimbarea interna a implementarii sale fara a strica functionalitatile generale ale sistemului. 2) Abstractizarea Abstractizarea reprezinta idea surpresiei de detalii. Importanta sa este data de abilitatea de a ascunde detalii irelevante din utilizarea referintelor de obiecte. Ea reliefeaza ce face sau ce este un obiect, nu cum este el reprezentat. Este o metoda prin care se reduce complexitatea sistemului. O clasa abstracta nu poate fi instantiate. 3) Mostenirea Mostenirea este abilitatea de a creea o noua clasa dintr-una ce exista deja. Fig. 2 [1] public class Exception { } public class IOException : Exception { } 4) Polimorfismul Polimorfismul este abilitatea de cere ca aceleasi operatii sa fie executatea de mai multe tipuri de obiecte. 2. Concept Masini Virtuale Masina virtuala este un calculator imaginar, dotat cu un set de instructiuni ce constituie limbajul (codul) virtual.

Lucrul cu cod virtual decurge astfel: textul sursa este tradus de catre compilator in limbaj virtual; programul rezultat constituie intrare pentru o procedura numita executiv, care este de fapt un interpreter al limbajului virtual. Executivul este scris intr-un limbaj recunoscut de calculatorul tinta (cel pe care urmeaza sa ruleze programul compilat). Rolul executivului este acela de a parcurge codul virtual obtinut de la compilator si de a executa fiecare instructiune, in termenii limbajului masina al calculatorului tinta. Avantajul acestui mod de lucru este acela ca daca un limbaj sursa trebuie tradus in mai multe limbaje obiect, compilatorul propriu-zis se scrie o singura data (el genereaza doar cod virtual), iar pentru fiecare limbaj obiect se construieste cate un executiv. A scrie un executiv este un lucru mult mai usor decat a scrie un compilator. Pe de alta parte, programul generat in cod virtual poate fi transportat pe orice masina dotata cu interpreterul codului respectiv, deci programul are o portabilitate crescuta. Compilatoarele de Java, spre exemplu, genereaza cod virtual (numit byte-code). Astfel, un applet, care este de fapt un program Java compilat poate fi incarcat si executat de catre un browser de web dotat cu interpreter de byte-code, chiar in conditiile in care applet-ul si browser-ul se afla pe calculatoare care functioneaza sub sisteme de operare diferite. Un dezavantaj al lucrului cu cod virtual este acela ca viteza de executie a programelor respective este mai mica, deoarece ele sunt executate "software" (prin intermediul interpreterului) si nu "hardware" (direct de catre procesor). Limbajul virtual si structura masinii virtuale sunt stabilite in principiu de catre proiectantul compilatorului, dupa urmatoarele criterii: comenzile virtuale sa fie suficiente pentru a permite transpunerea corecta a instructiunilor limbajului sursa; functionarea masinii virtuale sa poata fi cat mai usor de simulat cu ajutorul executivelor, pentru fiecare limbaj obiect. In general, limbajul virtual este inspirat din limbajele de asamblare existente la un moment dat, avand insa un grad ceva mai mare de abstractizare.

3. Arhitectura frameworkului.net[1] Ce este.net Framework?.NET Framework este o platformă nouă și revoluționară creată de Microsoft pentru dezvoltarea deaplicatii. Este o platformă pentru aplicații dezvoltatori. Este un cadru care acceptă mai multe limbi și integrare limba lui. IT are IDE (Integrated Development Environment). Cadrul este un set de utilități sau pot spune blocuri ale sistemului aplicare..net Framework oferă GUI într-un mod GUI..NET Este o platformă independentă, dar cu ajutorul lui Mono Compilation System (MCS).MCS este o interfață de nivel mediu..net Framework oferă interoperabilitate între limbi, adică Tip sistem comun (CTS)..NET Framework include, de asemenea.net Common Language Runtime (CLR), care este responsabil pentru menținerea executarea tuturor aplicații dezvoltate folosind biblioteca.net..net Framework constă în primul rând dintr-o bibliotecă gigantic de cod. Definiție: O infrastructură de programare creat de Microsoft pentru construirea, implementarea, precum și rularea aplicațiilor și serviciilor care utilizează tehnologiile.net, cum ar fi aplicații desktop și servicii Web. Integrarea Cross Language Puteți folosi un utilitar de o limbaj în alt limbaj ( Integration Language Class)..NET Framework nu include nici o restricție asupra tipului de aplicații ce sunt posibile..net Framework permite crearea de aplicatii Windows, aplicatii Web, servicii Web, și mult mai mult.

.NET Framework a fost conceput astfel încât să poată fi folosit de orice limbă, inclusiv C #, C ++,Visual Basic, JScript, și limbile chiar mai mari, cum ar fi COBOL. DLL Hell "DLL Hell" se referă la setul de probleme cauzate atunci când mai multe aplicații încearcă să împărtășească o componentă comună ca o bibliotecă dinamică link (DLL) sau un Component Object Model (COM) clasa. Motivul pentru această problemă a fost că informația versiune cu privire la diferitele componente ale unei cereri nu a fost înregistrat de către sistem. (Windows Registry nu poate susține mai multe versiuni ale aceluiași component COM acest lucru este numit problema iad dll.).net Framework ofera de funcționare a sistemelor cu o Adunare Global Cache (GAC). Acesta Cache este un depozit pentru toate componentele.net care sunt comune la nivel global pe o anumită mașină. Atunci când un component.net este instalat pe mașină, Adunarea Global Cache uită la versiunea sa, cheia sa publică, precum și informațiile sale de limbă și creează un nume puternic pentru componenta. Componenta este apoi înregistrat în magazia și indexate dupa numele acestuia puternică, astfel încât nu există nici o confuzie între versiuni diferite ale aceleiași componente sau DLL.

Arhitectura.NET Framework

Arhitectura CLR CLS (Common Language Specification) Acesta este un subset al CTS. Toate predare este în CLS și anume instruire a CTS este scris în CLS. Codul Director Manager de Codul invocă încărcător de clasă pentru executare. NET sprijină două tipuri de codificare 1) cod gestionat 2) Cod unmanaged Cod gestionat

Resursa, care este cu în domeniul dvs. de aplicare este, cod gestionat. Resursele care sunt în domeniu sunt mai rapide. Codul, care este dezvoltat în cadrul.net, este cunoscut sub numele de cod gestionat. Acest cod este executat direct de către CRJ cu ajutorul executarea de cod gestionat. Orice limbaj ce este scris în.net Framework este gestionat cod. Cod gestionat folosește CLR care la rândul arată după aplicațiile de gestionare a memoriei, manipularea de securitate, permițând centrare - depanare limbă, și așa mai departe. Cod negestionat Codul, care este dezvoltat în afara.net, cadru este cunoscut sub numele de cod unmanaged. Aplicațiile care nu se execută sub controlul CLR se spune că sunt unmanaged, iar unele limbi, cum ar fi C ++ pot fi folosite pentru a scrie astfel de aplicații, care, de exemplu, accesul redus - nivel de funcții ale sistemului de operare. Compatibilitate fundal cu cod de VB, ASP și COM sunt exemple de cod unmanaged. Cod unmanaged poate fi codul sursă unmanaged și codul compila unmanaged. Codul unmanaged este executat cu ajutorul claselor wrapper. Clasele wrapper sunt de două tipuri: CCW (COM callable wrapper) și RCW (Runtime Callable Wrapper). Wrapper este folosit pentru a acoperi diferentele cu ajutorul CCW și RCW.

CCW RCW Codul care urmează să fie executat trebuie să fie convertite într-o limbă pe care sistemul de operare țintă înțelege, cunoscut sub numele de cod nativ. Această conversie se numeștecompilarea cod, un act care este realizată de către un compilator. În.NET Framework, însă, acesta este de două - proces etape. Cu ajutorul de MSIL și JIT.

MSIL (Microsoft Intermediate Language) Acesta este codul independent de limbă. Când compila cod care utilizează biblioteca.net Framework, tu nu creează imediat sistem de operare - cod nativ specific. În schimb, compila codul în Microsoft Intermediate Language (MSIL) codul. Codul MSIL nu este specific pentru orice sistem de operare sau în orice limbă. JIT (Just-in-Time) Doar - în - Timpul (JIT) compilator, care compilează MSIL în cod nativ, care este specific pentru sistemul de operare și arhitectura mașină fiind vizate. Numai în acest moment poate sistemul de operare executa cererea. Doar - în - timp o parte a numelui reflectă faptul că cod MSIL este compilat doar ca, și atunci când, este necesar. În trecut, a fost de multe ori necesar pentru a compila codul în mai multe aplicații, fiecare dintre care specifice unui sistem de operare specific si arhitectura procesorului. Adesea, aceasta a fost o formă de optimizare. Acest lucru este acum inutil, pentru că compilatoare JIT (cum sugereaza si numele lor) de a folosi codul MSIL, care este independent de mașină, sistemul de operare, și CPU. Există mai multe compilatoare JIT, fiecare vizand o arhitectură diferită, iar cea corespunzătoare vor fi folosite pentru a crea codul nativ necesar. Frumusetea toate acestea este faptul că este nevoie de o mult mai putina munca din partea dvs. - de fapt, poti uita despre sistem - Detalii dependente și să se concentreze pe mai interesant funcționalitatea codul. JIT sunt de trei tipuri: Pre JIT 1. Pre JIT 2. Econo JIT 3. JIT Normal Acesta convertește toate codul în cod executabil si este lent Econo JIT Aceasta va converti numai numitul cod executabil. Dar va converti codul de fiecare dată când un cod este numit din nou. JIT Normal

Se va transforma doar numitul cod și va stoca în memoria cache, astfel încât aceasta nu va necesita conversie din nou cod. JIT normală este rapid. Ansambluri Când compilați o cerere, codul MSIL creat este stocat într-un ansamblu. Ansambluri includ atât fișiere executabile de aplicații pe care le puteți rula direct din Windows, fără a fi nevoie de alte programe (acestea au o extensie de fișier.exe), și biblioteci (care au extensia.dll) pentru utilizarea de către alte aplicații. În plus față de care conțin MSIL, ansambluri includ, de asemenea, informații meta (care este, informații despre informațiile conținute în adunarea, de asemenea, cunoscut sub numele de metadate) și resursele opționale (date suplimentare utilizate de către MSIL, cum ar fi fișiere de sunet și imagini). Informațiile meta permite ansambluri să fie pe deplin de sine - descriptiv. Aveți nevoie de nici o altă informație pentru a utiliza un ansamblu, ceea ce înseamnă că evitați situațiile, cum ar fi faptul că nu a adăuga date necesare pentru registry de sistem și așa mai departe, care a fost de multe ori o problemă atunci când în curs de dezvoltare cu alte platforme. Acest lucru înseamnă că implementarea aplicațiilor este de multe ori la fel de simplu ca copierea fișierelor într-un director de pe un computer la distanță. Deoarece nu există informații suplimentare necesare pe sistemele țintă, puteți rula doar un fișier executabil de acest director și (presupunând.net CLR este instalat) tu esti bine să plec. Desigur, nu veți dori neapărat să includă tot ce este necesar pentru a rula o aplicație într-un singur loc. S-ar putea scrie un cod care îndeplinește sarcini cerute de mai multe aplicații. În situații de genul asta, este adesea util să plasați codul reutilizabile într-un loc accesibil pentru toate aplicațiile. În.NET Framework, aceasta este Adunării Global Cache (GAC). Plasarea cod în GAC este simplu - puneți doar ansamblul care conține codul în directorul ce conține acest cache. Colectarea gunoiului (GC) Una dintre cele mai importante caracteristici ale cod gestionat este conceptul de colectare a gunoiului. Aceasta este metoda.net de a se asigura că memoria utilizată de o aplicație este eliberat complet atunci când cererea nu mai este în uz. Înainte de aceasta a fost cea mai mare parte.net responsabilitatea programatori, și câteva erori simple în cod ar putea duce la blocuri mari de memorie misterios dispariția, ca urmare a fi alocate la locul greșit în memorie. Asta de obicei, a însemnat o încetinire progresivă a computerului, urmat de un accident de sistem.

De colectare a gunoiului.net funcționează prin inspectarea memoria calculatorului dumneavoastră la fiecare atât de des și eliminarea nimic de la ea că nu mai este necesară. Nu există nici un interval de timp stabilit în acest sens; s-ar putea întâmpla de mii de ori pe secundă, o dată la câteva secunde, sau ori de câte ori, dar puteți fi siguri că se va întâmpla. Etapa 1 cod de aplicare este scris cu ajutorul unui.net - limbaj compatibil C #. Fig. 3 [1] Pasul 2 - Codul este compilat în MSIL, care este stocată într-un ansamblu Fig. 4 [1] Pasul 3 - Când acest cod este executat (fie de sine stătătoare în cazul în care este un executabil sau atunci când este folosit din alt cod), acesta trebuie mai întâi compilat în cod nativ folosind un compilator JIT. Fig. 5 [1]

Pasul 4 - Codul nativ este executat în cadrul CLR gestionat, împreună cu orice alte aplicații care rulează sau procese. Fig. 1 [1] Notă: Un punct suplimentar cu privire la acest proces. C # Codul care compilează în MSIL în etapa 2 nu trebuie să fie cuprinse într-un singur fișier. Este posibil să împartă cod aplicare în mai multe fișiere de cod sursă, care sunt apoi compilate într-un singur ansamblu. Acest proces extrem de util este cunoscut ca legarea. Acest lucru se datorează faptului că este mult mai ușor de a lucra cu mai multe fișiere mai mici decat unul singur enorm. Puteți separa cod legate logic într-un fișier individual, astfel încât să poată fi lucrat independent și apoi practic uitat după finalizarea acesteia. Acest lucru face, de asemenea, ușor pentru a localiza fragmente specifice de cod atunci când aveți nevoie de ele și permite echipelor de dezvoltatori să-și împartă povara de programare în bucăți de gestionat, în care persoanele pot verifica din bucăți de cod pentru a lucra la fără a risca deteriorarea altfel sectiuni satisfăcătoare sau secțiuni alte persoane sunt de lucru pe. 4. Concluzii Frameworkul.Net are mai multe avantaje decat java, deoarece permite Cross Language interoperability. Outputul sau poate fi de doua feluri : DLL sau.exe.

Bibliografie: 1. http://www.c-sharpcorner.com/uploadfile/puranindia/net-framework-and-architecture/ 2. http://www.codeproject.com/articles/7333/understanding-net-framework-at-a-glance 3. http://jes.ece.wisc.edu/papers/vm.pdf 4. http://www.codeproject.com/articles/467118/dotnet-infrastructure