Introduzione a Mono: cos’è e come funziona

Mono è un’implementazione open source della piattaforma .NET di Microsoft, sviluppata principalmente da Xamarin (ora parte di Microsoft). Mono fornisce un ambiente di esecuzione di codice .NET multi-piattaforma, consentendo ai programmi scritti in .NET di funzionare su sistemi operativi diversi da Windows, come macOS, Linux e Android

Cos’è Mono?

Mono è un’implementazione open source della piattaforma .NET di Microsoft. In pratica, Mono consente di eseguire codice .NET su piattaforme diverse da Windows.

È stato sviluppato principalmente da Xamarin, una società acquisita da Microsoft nel 2016.  Mono è disponibile sotto la licenza MIT, che consente la distribuzione del software anche a scopi commerciali.

La piattaforma .NET di Microsoft è stata originariamente sviluppata per funzionare solo su Windows, ma con Mono, i programmatori possono sviluppare e distribuire applicazioni .NET multi-piattaforma.

Mono non è solo un ambiente di esecuzione per il codice .NET, ma include anche una vasta libreria di classi, denominata “Base Class Library” (BCL), che implementa molte delle funzionalità presenti nella BCL di .NET. Mono include inoltre una versione open source del compilatore C# di Microsoft, chiamato “Roslyn”.

Mono fornisce un’ampia gamma di funzionalità, tra cui la compilazione just-in-time (JIT), che consente l’esecuzione del codice .NET su piattaforme diverse da Windows.

Come funziona Mono?

Mono funziona essenzialmente come un’alternativa multi-piattaforma alla piattaforma .NET di Microsoft. Esso consiste di due componenti principali:

Il runtime

Fornisce l’infrastruttura necessaria per eseguire il codice .NET. In particolare, il runtime fornisce il compilatore just-in-time (JIT) che traduce il codice .NET in codice macchina e lo esegue sulla piattaforma di destinazione. Il runtime Mono include anche una vasta libreria di classi, denominata Base Class Library (BCL), che implementa molte delle funzionalità presenti nella BCL di .NET.

Gli strumenti di sviluppo

Mono include una versione open source del compilatore C# di Microsoft, chiamato Roslyn, che consente di compilare il codice sorgente C# in codice eseguibile .NET. Mono include anche una vasta gamma di strumenti di sviluppo, tra cui un debugger, un profiler e una suite di test.

Mono (come .NET) è strettamente legato al linguaggio di programmazione C #, noto per il suo alto livello di portabilità ma supporta molti dei linguaggi di programmazione presenti nella piattaforma .NET di Microsoft, quali  F# e Visual Basic .NET.

Link

Sito del progetto Mono

Link al repository del progetto Mono

Link al repository del compilatore Roslyn

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *