Posso scrivere programmi in C # su Ubuntu?


34

Sono costretto ad apprendere ed esercitarmi in C #, ci sono applicazioni che supportano e possono essere usate per scrivere programmi in C #?


10
Che cosa hai provato? L'uso di una semplice combinazione di parole chiave di Google C# Ubunturivela già la risposta.
gertvdijk,

bene voterò per cancellare questa domanda
AmirRazoR,

3
Proprio per esperienza qui - è probabile che il tuo corso universitario presuma che tu sia su Windows e probabilmente utilizzerai diverse funzionalità di Windows solo in C # che non sempre sono correlate molto bene al mono, come i winform (anche se penso che mono potrebbe aver implementato winforms da allora, ma non ne sono sicuro). Potresti incorrere in problemi.
Drake Clarris,

bene, da quando ho iniziato a usare Ubuntu non sono andato a Windows una sola volta. ma terrò a mente questo consiglio.
AmirRazoR,

3
@AmirRazoR Il runtime mono supporta Windows Form. Tuttavia, non sono a conoscenza di alcun ambiente di sviluppo integrato in Ubuntu che supporti la loro creazione visiva. Se la tua classe è in linguaggio C #, immagino che non riguarderà Windows Form, ma potrebbe. Se trovi che devi usare un sistema operativo Windows, potresti considerare di eseguire Windows in una macchina virtuale su un sistema Ubuntu. La virtualizzazione di Windows richiede tuttavia che tu ne abbia una copia. (Oppure, se hai bisogno di una migliore accelerazione grafica di quella fornita da una macchina virtuale, potresti eseguire Ubuntu in una macchina virtuale su Windows.)
Eliah Kagan,

Risposte:


36

Sì, puoi usare mono

Affinché un IDE funzionante funzioni in monodevelop

sudo apt-get install monodevelop

Ciò comporterà anche tutti i runtime necessari necessari.


26

Quello che stai cercando è Mono , che è, citando dal sito web del progetto :

Un'implementazione open source, multipiattaforma di C # e CLR compatibile binaria con Microsoft.NET

Mono include anche un ambiente di sviluppo integrato (IDE): MonoDevelop . Entrambi i software sono confezionati per Ubuntu.

Mono

Installa tramite il centro software

MonoDevelop

Installa tramite il centro software

Quest'ultimo pacchetto dipende dal primo. L'installazione di questo pacchetto installerà automaticamente l'altro.


sto installando Monodevelop in questo momento, installare anche Mono o dovrei eseguire un comando specifico per installarlo?
AmirRazoR,

@AmirRazoR: sì, installerebbe Mono. Ho anche aggiornato la mia risposta per aggiungere queste informazioni.
Andrea Corbellini,

4

Puoi sviluppare applicazioni C # su Linux con .NET Core: https://www.microsoft.com/net/core

Dopo averlo installato, digitare dotnet new nel terminale per ottenere un elenco di modelli di applicazioni che possono essere generati per iniziare.

A partire da .NET Core 2.0 oggi, questo è l'elenco:

Templates                                         Short Name       Language          Tags               
--------------------------------------------------------------------------------------------------------
Console Application                               console          [C#], F#, VB      Common/Console     
Class library                                     classlib         [C#], F#, VB      Common/Library     
Unit Test Project                                 mstest           [C#], F#, VB      Test/MSTest        
xUnit Test Project                                xunit            [C#], F#, VB      Test/xUnit         
ASP.NET Core Empty                                web              [C#], F#          Web/Empty          
ASP.NET Core Web App (Model-View-Controller)      mvc              [C#], F#          Web/MVC            
ASP.NET Core Web App                              razor            [C#]              Web/MVC/Razor Pages
ASP.NET Core with Angular                         angular          [C#]              Web/MVC/SPA        
ASP.NET Core with React.js                        react            [C#]              Web/MVC/SPA        
ASP.NET Core with React.js and Redux              reactredux       [C#]              Web/MVC/SPA        
ASP.NET Core Web API                              webapi           [C#], F#          Web/WebAPI         
global.json file                                  globaljson                         Config             
Nuget Config                                      nugetconfig                        Config             
Web Config                                        webconfig                          Config             
Solution File                                     sln                                Solution           
Razor Page                                        page                               Web/ASP.NET        
MVC ViewImports                                   viewimports                        Web/ASP.NET        
MVC ViewStart                                     viewstart                          Web/ASP.NET        

L'ultima versione attuale è 2.0 e copre tutte le mie esigenze.


Mi piace che questa risposta sembri essere indipendente dall'IDE ma sono curioso di sapere che tipo di programmi sarebbe comodo lavorare con i progetti generati da questi comandi? Ad esempio, non ho visto il supporto per le pagine Razor in MonoDevelop. E VSCode mi sembra ancora goffo con il suo approccio modulare molto rigido a plugin e compilatori.
anon58192932

Rider sembra promettente: jetbrains.com/rider ma non l'ho ancora provato. Nel frattempo sono tornato a Windows, perché mi mancavano troppe funzionalità su Linux. Sono uno sviluppatore C #. Visual Studio semplifica notevolmente lo sviluppo. Stavo usando Sublime Text da qualche tempo su Linux.
Tadej,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.