Red Hat e Microsoft insieme per .NET Core

 

dotnet-logoLa collaborazione tra Red Hat e Microsoft ha già prodotto effetti interessanti, ma l’annuncio di ieri potrebbe essere perfino entusiasmante per qualche sviluppatore: Scott Hanselman di Microsoft, durante l’evento di Red Hat DevNation (casomai ci fosse stato il bisogno di mostrare ulteriormente l’intesa raggiunta tra le due aziende), ha presentato e annunciato il rilascio del framework .NET Core.
Un framework è un’insieme di librerie e programmi che uno sviluppatore può usare per costruire il proprio programma, anche usando linguaggi diversi: un pezzo scritto in C# ed uno in VisualBasic possono far parte dello stesso progetto proprio grazie ai ponti costruiti dal framework.

Qualcuno potrà dire: “Sai che novità! .NET è in giro da anni, e con Mono lo si usa su Linux da tempo!”. In effetti l’idea di un framework non è affatto nuova per Microsoft, che data il rilascio di .NET 1.0 (closed source e per Windows) al 2002; il progetto Mono, che vuole essere una implementazione per linux, è partito subito dopo – e da poco acquisito in toto da Microsoft.

.NET Core, come si intuisce dal nome, fornisce un insieme ridotto di librerie rispetto a .NET, ma porta tre (grosse) novità:

  1. è completamente opensource;
  2. è completamente modulare;
  3. è completamente portabile (su Windows, MacOS e Linux).

Il primo punto ormai non fa più scalpore: l’apertura di Microsoft all’opensource, soprattutto nel mondo degli sviluppatori, non fa più scalpore; ma sappiamo quanto bene può fare ad un progetto.

Il secondo è quello davvero importante: .NET nasce come un insieme unico, monolitico, di strumenti: viene installato completamente e indipendentemente dalle applicazioni che ne fanno uso, anche quando ne è richiesta soltanto una parte.
.NET Core nasce come un insieme di moduli, di base indipendenti, da integrare con l’applicazione che lo usa: non viene installato, ma i singoli componenti richiesti vengono distribuiti con l’applicazione.

Se il secondo punto è quello importante dal punto di vista architetturale, il terzo è quello importante dal punto di vista dell’utente: un programma che usi questo framework è (virtualmente) eseguibile in Windows, MacOS e Linux: scritto una volta, compilato (se necessario) per ogni piattaforma, senza bisogno di emulazioni o virtualizzazioni. La cosa (quasi sicuramente) sarà limitata a programmi senza interfaccia grafica, ma per noi amanti del pinguino questo non dovrebbe essere una novità (o un ostacolo, no? 😉 ).

Scott Hanselman, durante la presentazione, ha tenuto a sottolineare che Microsoft e Red Hat hanno presentato un prodotto, e non una semplice dimostrazione (almeno in Azure):

Why we are so excited to bring .NET Core 1.0 to you all here first is that it’s supported: this isn’t a toy! This is an enterprise quality workload that we’re releasing today and if you call Microsoft you get support, you call Red Hat you get support.
This is real and this is happening and this is pretty freaking amazing!

Il perché siamo tanto entusiasti di portare .NET Core 1.0 a tutti voi qui per primi è che è supportato: questo non è un giocattolo! Questo è un carico lavoro di livello enterprise che stiamo rilasciando oggi, e se chiami Microsoft ottieni supporto, se chiami Red Hat ottieni supporto.
Questo è reale e questo sta avvenendo e questo è semplicemente follemente stupefacente!

Mono e .NET Core coesisteranno a lungo sui nostri sistemi visto che assolvono ad esigenze diverse (anche .NET e .NET Core vanno avanti in parallelo), ma una piattaforma comune tra Windows e Linux (e MacOS) ufficialmente supportata e sviluppata da due grandi (se non i massimi) attori è un’ottimo punto di partenza per una nuova era. E non dimentichiamo che chiunque può contribuire: forza dell’opensource!

Per i più curiosi, il DevNation (dal punto di inizio della presentazione di .NET Core): https://youtu.be/nxnIpgHQ-Gw?t=1m2s

https://youtu.be/nxnIpgHQ-Gw?t=1m2s

 

Ho coltivato la mia passione per l'informatica fin da bambino, coi primi programmi BASIC. In età adulta mi sono avvicinato a Linux ed alla programmazione C, per poi interessarmi di reti. Infine, il mio hobby è diventato anche il mio lavoro.
Per me il modo migliore di imparare è fare, e per questo devo utilizzare le tecnologie che ritengo interessanti; a questo scopo, il mondo opensource offre gli strumenti perfetti.

Tags: , ,