Tôi có thể viết chương trình bằng C # trên Ubuntu không?


34

Tôi buộc phải học và thực hành C #, có ứng dụng nào hỗ trợ và có thể được sử dụng để viết chương trình trong C # không?


10
Bạn đã thử những gì? Sử dụng một tổ hợp từ khóa đơn giản của Google C# Ubuntucho thấy câu trả lời đã có.
gertvdijk

tôi sẽ bỏ phiếu để xóa câu hỏi này
AmirRazoR

3
Chỉ từ kinh nghiệm ở đây - có khả năng khóa học đại học của bạn sẽ cho rằng bạn đang ở trên cửa sổ và có thể sẽ sử dụng một số tính năng chỉ có trong C # không liên quan đến mono rất tốt, chẳng hạn như winforms (mặc dù tôi nghĩ là mono có thể đã thực hiện winforms, nhưng tôi không chắc). Bạn có thể gặp vấn đề.
Drake Clarris

tốt, kể từ ngày tôi bắt đầu sử dụng Ubuntu, tôi đã không vào windows một lần nào. nhưng tôi sẽ giữ lời khuyên này trong tâm trí của tôi.
AmirRazoR

3
@AmirRazoR Thời gian chạy đơn âm hỗ trợ Windows Forms. Tuy nhiên, tôi không biết về bất kỳ môi trường phát triển tích hợp nào trong Ubuntu hỗ trợ tạo chúng một cách trực quan. Nếu lớp của bạn sử dụng ngôn ngữ C #, tôi đoán nó sẽ không bao gồm Windows Forms, nhưng nó có thể. Nếu bạn thấy bạn phải sử dụng hệ điều hành Windows, bạn có thể cân nhắc chạy Windows trong máy ảo trên hệ thống Ubuntu. Mặc dù vậy, ảo hóa Windows yêu cầu bạn phải có một bản sao. (Hoặc, nếu bạn cần tăng tốc đồ họa tốt hơn máy ảo sẽ cung cấp, bạn có thể chạy Ubuntu trong máy ảo trên Windows.)
Eliah Kagan

Câu trả lời:


36

Có bạn có thể sử dụng mono

Để một IDE đẹp hoạt động trong thử nghiệm phát triển đơn

sudo apt-get install monodevelop

Điều này cũng sẽ kéo theo tất cả các thời gian chạy cần thiết cần thiết.


26

Những gì bạn đang tìm kiếm là Mono , được trích dẫn từ trang web của dự án :

Mã nguồn mở, đa nền tảng, triển khai C # và CLR tương thích nhị phân với Microsoft.NET

Mono cũng đi kèm với Môi trường phát triển tích hợp (IDE): MonoDevelop . Cả hai phần mềm được đóng gói cho Ubuntu.

Đơn điệu

Cài đặt qua trung tâm phần mềm

Phát triển đơn

Cài đặt qua trung tâm phần mềm

Gói cuối cùng này phụ thuộc vào gói đầu tiên. Cài đặt gói này sẽ tự động cài đặt gói khác.


Tôi đang cài đặt Monodevelop ngay bây giờ, điều này cũng sẽ cài đặt Mono, hay tôi nên chạy một lệnh cụ thể để cài đặt nó?
AmirRazoR

@AmirRazoR: vâng, nó sẽ cài đặt Mono. Tôi cũng đã cập nhật câu trả lời của mình để thêm thông tin này.
Andrea Corbellini

4

Bạn có thể phát triển các ứng dụng C # trên linux với .NET Core: https://www.microsoft.com/net/core

Sau khi bạn cài đặt nó, hãy nhập dotnet mới trong thiết bị đầu cuối của bạn để có danh sách các mẫu ứng dụng có thể được tạo để bạn bắt đầu.

Kể từ .NET Core 2.0 ngày hôm nay, đây là danh sách:

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        

Phiên bản mới nhất hiện tại là 2.0 và đáp ứng mọi nhu cầu của tôi.


Tôi thích câu trả lời này có vẻ độc lập với IDE nhưng tôi tò mò không biết loại chương trình nào sẽ thoải mái khi làm việc với các dự án được tạo bởi các lệnh này? Tôi đã không thấy hỗ trợ cho các trang Dao cạo trong MonoDevelop chẳng hạn. Và VSCode vẫn có vẻ khó hiểu với tôi với cách tiếp cận mô-đun rất nghiêm ngặt đối với các plugin và trình biên dịch.
anon58192932

Rider có vẻ đầy hứa hẹn: jetbrains.com/rider nhưng tôi chưa thử. Trong thời gian đó, tôi đã quay trở lại Windows, vì tôi đã thiếu quá nhiều tính năng trên Linux. Tôi là nhà phát triển C #. Và Visual Studio chỉ làm cho sự phát triển dễ dàng hơn nhiều. Tôi đã sử dụng Sublime Text một thời gian trên Linux.
Tadej
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.