Bisakah saya menulis program dalam C # di Ubuntu?

34

Saya dipaksa untuk belajar dan berlatih C #, apakah ada aplikasi yang mendukung dan dapat digunakan untuk menulis program dalam C #?

AmirRazoR
sumber
10
Apa yang sudah kamu coba? Menggunakan kombinasi kata kunci Google yang sederhana C# Ubuntusudah mengungkapkan jawabannya.
gertvdijk
baik saya akan memilih untuk menghapus pertanyaan ini
AmirRazoR
3
Hanya dari pengalaman di sini - kemungkinan program kuliah Anda akan menganggap Anda ada di windows, dan kemungkinan akan menggunakan beberapa fitur windows saja di C # yang tidak selalu berkorelasi dengan mono dengan sangat baik, seperti winforms (walaupun saya pikir mono mungkin sejak menerapkan winforms, tapi saya tidak yakin). Anda mungkin mengalami masalah.
Drake Clarris
baik, sejak hari saya mulai menggunakan ubuntu saya tidak pergi ke windows sekali pun. tetapi saya akan menyimpan saran ini di pikiran saya.
AmirRazoR
3
@AmirRazoR runtime mono tidak mendukung Windows Forms. Namun, saya tidak mengetahui adanya lingkungan pengembangan terintegrasi di Ubuntu yang mendukung pembuatannya secara visual. Jika kelas Anda menggunakan bahasa C #, saya kira itu tidak akan mencakup Formulir Windows, tapi mungkin saja. Jika ternyata Anda harus menggunakan sistem operasi Windows, Anda dapat mempertimbangkan menjalankan Windows di mesin virtual di sistem Ubuntu. Virtualisasi Windows memang mengharuskan Anda memiliki salinannya. (Atau, jika Anda membutuhkan akselerasi grafik yang lebih baik daripada yang disediakan oleh mesin virtual, Anda dapat menjalankan Ubuntu di mesin virtual pada Windows.)
Eliah Kagan

Jawaban:

36

Ya, Anda bisa menggunakan mono

Agar IDE yang bagus berfungsi di coba monodevelop

sudo apt-get install monodevelop

Ini juga akan menarik semua runtimes yang diperlukan yang diperlukan.

0x7c0
sumber
26

Apa yang Anda cari adalah Mono , yang mengutip dari situs web proyek :

Sumber terbuka, lintas platform, implementasi C # dan CLR yang bersifat biner kompatibel dengan Microsoft.NET

Mono juga dilengkapi dengan Integrated Development Environment (IDE): MonoDevelop . Kedua perangkat lunak tersebut dikemas untuk Ubuntu.

Mono

Instal melalui pusat perangkat lunak

MonoDevelop

Instal melalui pusat perangkat lunak

Paket terakhir ini tergantung pada yang pertama. Menginstal paket ini akan secara otomatis menginstal yang lain.

Andrea Corbellini
sumber
saya menginstal Monodevelop sekarang, apakah ini juga menginstal Mono, atau saya harus menjalankan perintah khusus untuk menginstalnya?
AmirRazoR
@AmirRazoR: ya, itu akan menginstal Mono. Saya juga memperbarui jawaban saya untuk menambahkan informasi ini.
Andrea Corbellini
4

Anda dapat mengembangkan aplikasi C # di linux dengan .NET Core: https://www.microsoft.com/net/core

Setelah Anda menginstalnya, ketik dotnet baru di terminal Anda untuk mendapatkan daftar templat aplikasi yang dapat dihasilkan untuk Anda mulai.

Pada .NET Core 2.0 hari ini, ini adalah daftarnya:

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        

Versi terbaru saat ini adalah 2.0 dan mencakup semua kebutuhan saya.

Tadej
sumber
Saya suka bahwa jawaban ini tampaknya IDE independen tetapi saya ingin tahu seperti apa program yang akan nyaman bekerja dengan proyek yang dihasilkan oleh perintah ini? Saya tidak melihat dukungan untuk halaman Razor di MonoDevelop misalnya. Dan VSCode masih terasa kikuk bagi saya dengan pendekatan modular yang sangat ketat untuk plugin dan kompiler.
anon58192932
Rider sepertinya menjanjikan: jetbrains.com/rider tapi saya belum mencobanya. Sementara itu saya pindah kembali ke Windows, karena saya kehilangan terlalu banyak fitur di Linux. Saya seorang pengembang C #. Dan Visual Studio hanya membuat pengembangan jadi lebih mudah. Saya menggunakan Sublime Text untuk beberapa waktu di Linux.
Tadej