C# şi platforma .NET
Numele limbajului C# - inspirat din notaţia ♯ (diez) din muzică Creatorii limbajului: Anders Hejlsberg, Scott Wiltamuth şi Peter Golde – Microsoft Prima implementare C# distribuită a fost lansată de către Microsoft ca parte a iniţiativei .NET în iulie 2000
Caracteristici ale limbajului C# Limbaj de programare simplu, modern, de utilitate generală, cu productivitate mare în programare. Este un limbaj orientat pe obiecte. Permite dezvoltarea de aplicaţii industriale robuste, durabile. Oferă suport complet pentru dezvoltarea de componente software. Gestionează în mod automat memoria utilizată în strânsă legătură cu platforma .NET.
Oferă suport pentru Internaționalizare Sintaxa C# derivă din limbajul C++, dar include şi influenţe din alte limbaje, mai ales Java Portabilitate (Windows, Linux, Mac OS) În C# se scriu aplicaţii pentru: sisteme complexe (PC) sisteme dedicate (embeded systems).
.NET Framework Common Language Runtime (CLR) Base Class Library Este o componentă software care care permite dezvoltarea şi rularea aplicaţiilor şi a serviciilor Web .NET este constituit din două entităţi: Common Language Runtime (CLR) Base Class Library
Common Language Runtime (CLR) Este mediul de execuţie al programelor Modulul CLR se ocupă cu managementul şi execuţia programelor pentru platforma .NET CLR asigură: interoperabilitatea limbajelor (cross-language integration) securitatea aplicaţiilor portabilitatea aplicațiilor managementul memoriei Compilarea aplicațiilor ( Compilatorul JIT) tratarea unificată a excepţiilor (cross-language exception handling).
Base Class Library (Biblioteca de clase .NET) Acoperă o arie largă a necesităţilor de programare: interfaţa cu utilizatorul –UI (WF, WCF) conectarea cu bazele de date şi accesarea datelor (ADO.NET) aplicații orientate pe servicii (WCF) dezvoltarea aplicaţiilor Web (ASP.NET) interoperabilitatea limbajelor suport pentru comunicarea în reţele oferă un sistem de tipuri comun
Compilarea programelor pe .NET Framework C# - limbaj compilat În urma compilării, rezultă un fișier assembly assembly conţine un tip special de cod, numit CIL (Common Intermediate Language) - Limbaj Intermediar . CIL definește un set de instrucţiuni portabile, independente de orice tip de procesor şi platformă. În momentul în care un program este executat, CLR activează un compilator special, numit JIT (just in time). JIT preia codul CIL şi îl transformă în cod executabil.
Crearea codului mașină pe platforma .NET.
Execuția aplicațiilor VB APLICAȚIE .NET Compilator C#, C++, VB, F# Assembly (.exe sau .dll) (Limbaj Intermediar – IL) CLR -> Compilator JIT (Transformă IL în Cod Nativ) Sistem de Operare VC++ 6.0 Aplicație non .NET Compilator VC++ 6.0 Assembly (.exe sau .dll) Cod nativ/Cod mașină Sistem de Operare
Principalele caracteristici ale arhitecturii .NET - rezumat Independenţa de procesor şi de platformă Codul CIL este independent de sistemul de operare şi de procesor Managementul automat al memoriei - garbage collector. Interoperabilitatea limbajelor Diversele componente ale unei aplicaţii să fie scrise în limbaje diferite, suportate de către platforma .NET. Securitate .NET furnizează un model comun de securitate, valabil pentru toate limbajele, care include un mecanism unificat de tratare a excepţiilor . Portabilitate Un program scris pentru platforma .NET poate rula fără nicio modificare pe oricare sistem pe care platforma este instalată