.NET Core - Panoramica
.NET Core è l'ultima piattaforma di sviluppo generica gestita da Microsoft. Funziona su diverse piattaforme ed è stato riprogettato in modo da rendere .NET veloce, flessibile e moderno. Questo sembra essere uno dei principali contributi di Microsoft. Gli sviluppatori possono ora creare applicazioni Android, iOS, Linux, Mac e Windows con .NET, il tutto in Open Source.
In questo tutorial, tratteremo .NET Core e alcune nuove innovazioni tra cui gli aggiornamenti di .NET Framework, .NET Standard e gli aggiornamenti della piattaforma Windows universale, ecc.
Caratteristiche di .NET Core
Di seguito sono riportate le caratteristiche principali di .NET Core:
Open source
.NET Core è un'implementazione open source, che utilizza licenze MIT e Apache 2.
.NET Core è un progetto .NET Foundation ed è disponibile su GitHub.
In quanto progetto open source, promuove un processo di sviluppo più trasparente e promuove una comunità attiva e impegnata.
Cross-platform
L'applicazione implementata in .NET Core può essere eseguita e il relativo codice può essere riutilizzato indipendentemente dalla destinazione della piattaforma.
Attualmente supporta tre principali sistemi operativi (OS)
Windows
Linux
MacOS
I sistemi operativi (OS) supportati, le CPU e gli scenari applicativi cresceranno nel tempo, forniti da Microsoft, altre società e individui.
Distribuzione flessibile
Possono essere disponibili due tipi di distribuzioni per le applicazioni .NET Core:
Distribuzione dipendente dal framework
Distribuzione autonoma
Con la distribuzione dipendente dal framework, l'app dipende da una versione a livello di sistema di .NET Core in cui sono installate l'app e le dipendenze di terze parti.
Con la distribuzione autonoma, anche la versione .NET Core usata per creare l'applicazione viene distribuita insieme all'app e alle dipendenze di terze parti e può essere eseguita fianco a fianco con altre versioni.
Strumenti della riga di comando
Tutti gli scenari del prodotto possono essere utilizzati dalla riga di comando.
Compatibile
.NET Core è compatibile con .NET Framework, Xamarin e Mono, tramite la libreria .NET Standard
Modulare
.NET Core viene rilasciato tramite NuGet in pacchetti di assembly più piccoli.
.NET Framework è un grande assembly che contiene la maggior parte delle funzionalità principali.
.NET Core è disponibile come pacchetti più piccoli incentrati sulle funzionalità.
Questo approccio modulare consente agli sviluppatori di ottimizzare la loro app includendo solo quei pacchetti NuGet di cui hanno bisogno nella loro app.
I vantaggi di una superficie di app più piccola includono una maggiore sicurezza, manutenzione ridotta, prestazioni migliorate e costi ridotti in un modello a pagamento.
La piattaforma .NET Core
.NET Core Platform contiene le seguenti parti principali:
.NET Runtime - Fornisce un sistema di tipi, caricamento di assembly, un garbage collector, interoperabilità nativa e altri servizi di base.
Fundamental Libraries - Un set di librerie di framework, che forniscono tipi di dati primitivi, tipi di composizione di app e utilità fondamentali.
SDK & Compiler - Un set di strumenti SDK e compilatori di linguaggi che consentono l'esperienza dello sviluppatore di base, disponibile in .NET Core SDK.
‘dotnet’ app host- Viene utilizzato per avviare le app .NET Core. Seleziona il runtime e ospita il runtime, fornisce un criterio di caricamento degli assembly e avvia l'app. Lo stesso host viene utilizzato anche per avviare gli strumenti SDK più o meno allo stesso modo.