În ultima perioadă, mai exact în ultimul an, Microsoft a venit cu o serie de schimbări extrem de neașteptate chiar și pentru dezvoltatorii care folosesc aceste tehnologii.Schimbările au fost și sunt (chiar în momentul în care scriu acest articol apar noi știri despre modificări extraordinare) atât structurale și arhitecturale cât și legate de noua politică a celor de la Microsoft, care devine tot mai deschis și orientat către un „open source framework”.
Acum aproximativ 15 ani, deși cochetam în acel moment cu tehnologiile considerate „open source”, am avut oportunitatea de a începe un nou proiect. Partea interesantă nu este legată nici pe departe de începerea unui nou proiect (în cei 20+ ani de muncă în domeniu, am tot început proiecte, pe care, spre bucuria mea, le-am și dus la bun sfârșit), ci de o cerință „ciudată” a clientului din acel moment:„Aplicația va trebui sa fie construită folosind tehnologii Microsoft”.
Astfel, având o nouă provocare în fața mea, am luat contact pentru prima oară cu o tehnologie Microsoft orientată web. Se numea ASP.NET 1.0. Din acel moment, milioane de programatori ca și mine, au utilizat acest framework pentru a construi aplicații web și i-au observat dezvoltarea. Îmi face o deosebită plăcere să îmi amintesc de versiunea 3.0 lansată odată cu Visual Studio 2008 sau versiunea 4.0 lansată odată cu Visual Studio 2010. Urmărindu-i evoluția, am realizat că, deși orice nouă versiune venea cu îmbunătățiri majore, se simțea totuși lipsa un mediu „open source” în care programatorii să își poată aduce contribuția la dezvoltarea acestui framework.
O veche „zicală” în lumea IT, inițiată de Phil Karlton și preluată de Martin Fowler, spune că: „Există două lucruri dificile în știința calculatoarelor: invalidarea cache-ului și numirea lucrurilor”. Citind în urmă cu câteva zile o postare de pe blog-ul lui Scott Hanselman, am realizat cât de aproape este Microsoft de o nouă versiune 1.0. De această data însă, este ceva complet nou numit ASP.NET CORE 1.0.
Câteva aspecte foarte importante legate de noua versiune ce trebuiesc menționate ar fi:
- Este o versiune ”open source” focusată către comunitatea de dezvoltatori
- Se pot construi aplicații „cross-platform” pentru Windows, Mac sau Linux
- Are suport „build-in” pentru „dependency injection”
- Suport integrat pentru crearea și utilizarea pachetelor NuGet
- Configurare integrată pentru „cloud-ready”
- Versionare „side-by-side”
- Hostare în IIS sau „self-host” într-un proces propriu
Foarte diferit este și modul în care au anunțat acest „rebranding”. Astfel, în nici un an de la prima versiune lansată ASP.NET 5.0 devine ASP.NET Core 1.0, .NET Core 5.0 devine .NET Core 1.0, iar Entity Framework 7.0 – o versiune rescrisă complet – devine Entity Framework Core 1.0 or EF Core 1.0 colloquially.
În final trebuie să amintesc și câteva lucruri care intră în categoria „work in progress”: încă nu suportă Visual Basic, F# precum și SignalR sau Web Pages. Dar, această nouă abordare a celor de la Microsoft, precum și aceste vești neașteptate și foarte plăcute nu pot decât sa mă bucure, să imi dea încredere în viitor și să mă facă să închei printr-un mesaj motivațional: „Please, keep up the good work Microsoft.”