Publicația industriei TECH regionale

Introducere în .Net Core

Încă de la apariția .Net, de la .NET Compact Framework la Silverlight, de la Windows Phone la aplicații Windows Store, programatorii au avut de a face cu versiuni fragmentate de .NET. Deși toate ar trebuit să aibă un asa-zis runtime „comun” ajungeau de fapt să e un subset diferit de .Net pentru fiecare platforma din suita Microsoft. 
Ce este .NET Core?
Într-adevăr fiecare din ele are și va avea întotdeauna capabilități diferite, dar a avea o bază comună pentru toate în loc de subseturi foarte bine de nite este un mare plus. Faptul că putem avea aplicații desktop sau mobile și putem folosi componente care să se integreze perfect pe oricare dintre ele, face din .NET un mediu de dezvoltare din ce în ce mai atractiv, și totodată rezolva multe din problemele de versionare și compatibilitate apărute de-a lungul vremii. 
01_1
.Net Core nu încearcă (deocamdată) să înlocuiască .Net framework-ul pe care îl știm cu toții, dar aduce o serie de beneficii:

  • Open source
  • Un singur .NET pentru toate platformele (Microsoft sau în afara Microsoft) 
  • Nu necesita install-uri la nivel de mașină 
  • Mic, rapid, modular și extensibil 
  • În mediul .NET, Core v-a primi primul update-uri/patch-uri 

01_2
Are un nou model de configurare pentru aplicații bazat pe Json, folosește perechi cheie-valoare, eliminând astfel clasicul web.config.
Modelul de hosting AspNet nu asculta direct requesturile, ci se bazează pe o implementare HTTP a unui server, ce prefațează interfețe care pot compuse într-un Http-Context. Include suport pentru a rula în varianta clasica în IIS, sau în afara IIS (self-hosting) folosind Kestrel – un web server open-source, scris cu ajutorul Libuv, o librărie multi-platforma cu focus pe operațiile asincrone I/O, care targeta inițial Node.js.
Este format dintr-un subset de librarii numite „CoreFX” și un runtime mic și optimizat numit „CoreCLR”, distribuite ca pachete individuale prin NuGet.
Unul din beneficiile majore aduse de .NET Core este portabilitatea. Poți împacheta și deploya CoreCLR împreună cu aplicația, eliminând astfel dependenta de versiunea de framework instalata pe server. De asemenea poți hosta mai multe aplicații simultan, pe același server chiar dacă targheteaza versiuni diferite de framework, și nu mai ești forțat să upgrade zi toate aplicațiile simultan.
Concepte noi
project.json 
– este una din componentele principale ale unui proiect ASP Core care înlocuiește web.config-ul din versiunile anterioare de .Net. Conține proprietăți legate de metadata (version, autori, opțiuni de compilare), dependințe ( folosite de NuGet), se pot specifica opțiuni de buibuild, opțiuni de pubpublish.
DNX (Dot Net Execution Environment ) 

  • SDK și un mediu de runtime care are tot ce este necesar pentru a construi și a rula aplicații .Net pentru Windows, Mac și Linux. A fost construit pentru a rula aplicații ASP.NET cross-platform și poți targeta versiunea completa asp net și cea light reprezentata de .NET Core.
    – Hosteaza CLR-ul
    – Executa aplicația
    – Este entry-point

Dnx451 – este versiunea completa de .net care se instalează odată cu Visual Studio
DnxCore – este versiunea care funcționează cross-platform-lightweight, cu mai puține features.
Middleware
– Componente reutilizabile asamblate în pipeline-ul aplicației care gestionează cereri și răspunsuri. Sunt scrise în clase separate; Implementează metode de extensie în IApplicationBuilder; Într-o aplicație clasica ASP.NET Core vom avea mai multe componente middleware configurate, ca de exemplu: (Static Files Midddleware, Authentication Middleware, MVC)
01_3
Startup.cs 

  • Este definită de programator; Îți poți defini middleware-urile care vor forma pipeline-ul
  • Are o metoda Main și alte metode pe care le apelează DNX-ul
  • Înlocuiește Global.asax

xproj 

  • este un fișier specific Visual Studio folosit behind the scenes
  • înlocuiește csproj-ul împreună cu project.json

Pachete din NuGet, NPM și Bower 
Știm cu toții că NuGet este principalul tool folosit de programatorii .NET pentru a instala cat mai ușor diverse pachete/librarii, fie ele server-side sau client-side. Uneori pentru pachetele client-side exista multe dependințe, configurări care dau bătăi de cap celor mai puțin experimentați dintre noi, iar integrarea cu Visual Studio a celor mai comune tool-uri din lumea dezvoltarii web nu a fost întotdeauna cea mai simpla. Microsoft le face parte integranta din IDE și încurajează folosirea lor extensiva.
NPM (Gulp și Grunt) 

  • Rulează pe node.js
  • Poți scrie task-uri în javascript
  • Poți folosi task runners
  • Nu mai e necesar să faci register la bundles( pentru minification)
  • Sunt integrate în Visual Studio

.NET Core include doar librăriile și funcțiile minimale și comune absolut necesare unei aplicații pentru a rula cross-platform (Mac, Linux, Windows), altfel spus „plătești” doar pentru ce folosești. Acest lucru nu poate decât să ne bucure întrucât au apărut deja teste care arata că suporta cu 2300% mai multe requesturi pe secunda mai mult decât „vechiul” ASP.NET 4.6.
01_4
 

Distribuie și tu:

START Nominalizări PIN AWARDS 2024!

Industria regională de TECH se pregătește să celebreze o nouă serie de recunoașteri prin Gala PIN AWARDS 2024, care va avea loc joi, 23 mai

RECOMANDATE

Articole similare

Laser Valley Innovation Bootcamp 2024

Echipa care va inova chirurgia câștigă Laser Valley Innovation Bootcamp 2024

A doua ediție a Laser Valley Innovation Bootcamp a avut loc între 14-16 iunie în orașul Măgurele, la Conacul Oteteleșanu. A reunit peste 100 de participanți dornici să inoveze și să creeze afaceri și proiecte revoluționare în sectorul tehnologiei. Scopul principal al Laser Valley Innovation Bootcamp este de a facilita colaborarea între cercetătorii din Institutele Naționale de Cercetare – Dezvoltare, antreprenori și studenți, pentru a genera noi proiecte cu potențial inovator sau pentru a avansa inițiative existente.

Laser Valley Innovation Bootcamp

Laser Valley Innovation Bootcamp revine pe 14 iunie. Peste 100 de participanți, așteptați la evenimentul dedicat cercetării, inovării și formării de business-uri în tehnologie

aser Valley Innovation Bootcamp revine în orașul Măgurele pentru al doilea an consecutiv. Evenimentul dedicat cercetării, inovării și formării de business-uri în tehnologie aduce împreună cercetători, antreprenori și studenți pasionați de inovație și tehnologie. Peste 100 de participanți sunt așteptați în cadrul Laser Valley Innovation Bootcamp. Evenimentul se va desfășura între 14 – 16 iunie la Conacul Oteteleșanu și Biblioteca Națională de Fizică din Măgurele (Ilfov).