Puis-je écrire des programmes en C # sur Ubuntu?

34

Je suis obligé d'apprendre et de pratiquer le C #. Existe-t-il des applications prenant en charge et pouvant être utilisées pour écrire des programmes en C #?

AmirRazoR
la source
10
Qu'as-tu essayé? L'utilisation d'une simple combinaison de mots-clés Google C# Ubunturévèle déjà la réponse.
gertvdijk
bien je vais voter pour supprimer cette question
AmirRazoR
3
Juste par expérience, il est probable que votre cours collégial supposera que vous êtes sur Windows et utiliserez probablement plusieurs fonctionnalités uniquement en C # de Windows qui ne correspondent pas toujours très bien au mono, telles que les winforms (bien que je pense peut avoir depuis implémenté winforms, mais je ne suis pas sûr). Vous pouvez rencontrer des problèmes.
Drake Clarris
Depuis le jour où j’ai commencé à utiliser Ubuntu, je ne suis pas allé à Windows une seule fois. mais je garderai ce conseil dans mon esprit.
AmirRazoR
3
@AmirRazoR Le moteur d'exécution mono prend en charge Windows Forms. Cependant, je ne connais aucun environnement de développement intégré dans Ubuntu prenant en charge leur création visuelle. Si votre classe utilise le langage C #, je suppose que cela ne couvrira pas Windows Forms, mais c'est peut-être le cas. Si vous constatez que vous devez utiliser un système d'exploitation Windows, vous pouvez envisager d'exécuter Windows sur une machine virtuelle sur un système Ubuntu. La virtualisation de Windows nécessite toutefois que vous en ayez une copie. (Ou, si vous avez besoin d'une accélération graphique supérieure à celle d'une machine virtuelle, vous pouvez exécuter Ubuntu sur une machine virtuelle sous Windows.)
Eliah Kagan Le

Réponses:

36

Oui, vous pouvez utiliser mono

Pour qu'un bon IDE fonctionne, essayez monodevelop

sudo apt-get install monodevelop

Cela attirera également tous les temps d’exécution nécessaires.

0x7c0
la source
26

Ce que vous recherchez, c'est Mono , qui cite le site Web du projet :

Une implémentation open source, multi-plateforme, de C # et du CLR compatible binaire avec Microsoft.NET

Mono est également livré avec un environnement de développement intégré (IDE): MonoDevelop . Les deux logiciels sont packagés pour Ubuntu.

Mono

Installer via le centre de logiciel

MonoDevelop

Installer via le centre de logiciel

Ce dernier paquet dépend du premier. L'installation de ce paquet installera automatiquement l'autre.

Andrea Corbellini
la source
J'installe Monodevelop en ce moment, est-ce que cela installerait également Mono ou devrais-je exécuter une commande spécifique pour l'installer?
AmirRazoR
@AmirRazoR: oui, cela installerait Mono. J'ai également mis à jour ma réponse pour ajouter cette information.
Andrea Corbellini
4

Vous pouvez développer des applications C # sur Linux avec .NET Core: https://www.microsoft.com/net/core

Après l’avoir installé, tapez dotnet new dans votre terminal pour obtenir une liste des modèles d’application pouvant être générés pour vous permettre de démarrer.

En tant que .NET Core 2.0 aujourd'hui, voici la liste:

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        

La dernière version actuelle est la 2.0 et couvre tous mes besoins.

Tadej
la source
J'aime que cette réponse semble être indépendante de l'IDE, mais je suis curieux de savoir quel type de programme accepterait de travailler avec les projets générés par ces commandes? Je n'ai pas vu de support pour les pages Razor dans MonoDevelop par exemple. Et VSCode me semble toujours maladroit avec son approche modulaire très stricte des plugins et des compilateurs.
anon58192932
Le pilote semble prometteur: jetbrains.com/rider mais je ne l’ai pas encore essayé. En attendant, je suis revenu à Windows, car il me manquait trop de fonctionnalités sous Linux. Je suis un développeur C #. Et Visual Studio facilite grandement le développement. J'utilisais Sublime Text pendant un certain temps sous Linux.
Tadej