Ubuntu에서 C #으로 프로그램을 작성할 수 있습니까?


34

C #을 배우고 연습해야하며 C #으로 프로그램을 작성하고 지원하는 데 사용할 수있는 응용 프로그램이 있습니까?


10
무엇을 시도 했습니까? 간단한 Google 키워드 조합을 사용하면 C# Ubuntu이미 답변이 표시됩니다.
gertvdijk


3
여기에서 경험 한 것만으로도 대학 과정에서 Windows에 있다고 가정 할 가능성이 높으며 C #에서는 winform과 같이 항상 모노와 관련이없는 몇 가지 Windows 전용 기능을 사용합니다. 이후 winforms를 구현했을 수도 있지만 확실하지 않습니다). 문제가 발생할 수 있습니다.
Drake Clarris

글쎄, 내가 우분투를 사용하기 시작한 이래로 나는 한 번에 창문에 가지 않았다. 그러나 나는이 조언을 계속 생각할 것이다.
AmirRazoR

3
@AmirRazoR 모노 런타임은 Windows Forms를 지원합니다. 그러나 Ubuntu의 시각적 개발을 지원하는 통합 개발 환경은 알지 못합니다. 수업이 C # 언어라면 Windows Forms를 다루지는 않지만 추측 할 수 있습니다. Windows 운영 체제를 사용해야하는 경우 Ubuntu 시스템의 가상 머신에서 Windows를 실행하는 것을 고려할 수 있습니다. 그러나 Windows 가상화에는 사본이 필요합니다. (또는 가상 머신이 제공하는 것보다 더 나은 그래픽 가속이 필요한 경우 Windows의 가상 머신에서 Ubuntu를 실행할 수 있습니다.)
Eliah Kagan

답변:


36

예, 모노 를 사용할 수 있습니다

멋진 IDE가 모노 개발을 시도 할 때

sudo apt-get install monodevelop

또한 필요한 모든 런타임이 필요합니다.


26

찾고있는 것은 Mono입니다 . 즉, 프로젝트 웹 사이트 에서 인용합니다 .

Microsoft.NET과 이진 호환되는 C # 및 CLR 의 오픈 소스 크로스 플랫폼 구현

Mono에는 IDE (Integrated Development Environment) : MonoDevelop 도 함께 제공됩니다 . 두 소프트웨어 모두 Ubuntu 용으로 패키지되어 있습니다.

모노

소프트웨어 센터를 통해 설치

MonoDevelop

소프트웨어 센터를 통해 설치

이 마지막 패키지는 첫 번째 패키지에 따라 다릅니다. 이 패키지를 설치하면 다른 패키지가 자동으로 설치됩니다.


지금 Monodevelop를 설치하고 있는데 Mono도 설치합니까, 아니면 특정 명령을 실행하여 설치해야합니까?
AmirRazoR

@ AmirRazoR : 예, 모노를 설치합니다. 이 정보를 추가하기 위해 답변을 업데이트했습니다.
Andrea Corbellini

4

.NET Core를 사용하여 Linux에서 C # 응용 프로그램을 개발할 수 있습니다 : https://www.microsoft.com/net/core

설치 한 후 터미널에 dotnet new를 입력하여 시작할 수있는 애플리케이션 템플리트 목록을 가져 오십시오.

.NET Core 2.0 현재이 목록은 다음과 같습니다.

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        

현재 최신 버전은 2.0이며 모든 요구를 충족시킵니다.


나는이 답변이 IDE 독립적 인 것처럼 보이지만이 명령으로 생성 된 프로젝트로 어떤 종류의 프로그램을 편안하게 사용할 수 있는지 궁금합니다. 예를 들어 MonoDevelop에서 Razor 페이지에 대한 지원을 보지 못했습니다. 그리고 VSCode는 플러그인과 컴파일러에 대한 매우 엄격한 모듈 방식으로 여전히 나쁘지 않습니다.
anon58192932

라이더는 유망한 것 같습니다 : jetbrains.com/rider 하지만 아직 시도하지 않았습니다. 그 동안 Linux에서 너무 많은 기능이 누락되어 Windows로 돌아갔습니다. 저는 C # 개발자입니다. 그리고 Visual Studio는 개발을 훨씬 쉽게 만듭니다. 나는 리눅스에서 Sublime Text를 얼마 동안 사용하고 있었다.
Tadej
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.