.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.