====== .NET (리눅스에서의 닷넷 개발환경) ====== Linux에서도 Microsoft의 .NET을 사용하여 C# 및 VB.NET 응용 프로그램을 개발할 수 있습니다. 응용 프로그램의 종류와 기존 소스의 구조에 따라 Linux 지원 방법이 달라집니다. 특히 WinForms 응용 프로그램은 일반적인 최신 .NET만으로는 Linux에서 실행되지 않으며, ComfileTech.WinForms 또는 Mono와 같은 별도의 방법이 필요합니다. 개발 방법은 크게 세 가지가 있습니다. * 최신 .NET 사용 * ComfileTech.WinForms 사용 * 기존 .NET Framework와 Mono 사용 {{ :dotnet:selection.png?nolink |}} ===== 어떤 방법을 선택해야 하나요? ===== ^ 상황 ^ 권장 방법 ^ | 새로운 프로젝트를 시작하는 경우 | 최신 .NET | | WinForms를 유지하면서 새로운 프로젝트를 시작하는 경우 | ComfileTech.WinForms | | 기존에 이미 만들어진 .NET Framework 프로그램을 Linux로 이식하는 경우 | Mono | 이 세 가지 방법은 개발 방식과 향후 유지보수 방향이 크게 다르므로, 프로젝트의 목적에 맞게 신중히 선택하시기 바랍니다. ===== 최신 .NET ===== 최신 .NET은 Microsoft가 현재 적극적으로 개발 및 지원하고 있는 플랫폼입니다. 새로운 프로젝트를 시작하는 경우 가장 권장되는 방법입니다. 장점: * 최신 Visual Studio 사용 가능 * 최신 C# 및 VB.NET 언어 기능 사용 가능 * 지속적인 성능 향상 및 기능 개선 * 장기적인 기술 지원 * Windows와 Linux를 포함한 다양한 플랫폼 지원 * 웹 서버, REST API, 콘솔 프로그램 등 다양한 형태의 응용 프로그램 개발 가능 ===== ComfileTech.WinForms ===== ComfileTech.WinForms는 기존 WinForms 개발 방식을 유지하면서 최신 .NET을 사용할 수 있도록 COMFILE Technology에서 개발한 라이브러리입니다. Microsoft의 공식 WinForms는 Windows 전용이지만, ComfileTech.WinForms를 사용하면 WinForms 방식으로 개발한 응용 프로그램을 Windows와 Linux에서 모두 실행할 수 있습니다. 기존 WinForms 개발 경험을 유지하면서 Linux를 지원해야 하는 경우 가장 적합한 방법입니다. 장점: * 기존 WinForms 개발 방식 유지 * 최신 .NET 사용 가능 * 최신 Visual Studio 사용 가능 * Windows와 Linux 동시 지원 * 기존 WinForms 개발자의 학습 부담 최소화 자세한 내용은 다음 문서를 참고하십시오. * [[winforms:index|ComfileTech.WinForms]] [[.:remote_debugger:index|COMFILE Technology Remote .NET Debugger 확장 기능]]과 **Visual Studio 2026**을 사용하면, 과거 Windows CE 환경에서 Visual Studio 2008로 개발하던 것처럼 jPC에 프로그램을 다운로드하고 원격 디버깅할 수 있습니다. ===== .NET Framework와 Mono ===== Mono는 Linux에서 .NET Framework 응용 프로그램을 실행하기 위한 오픈소스 런타임입니다. 기존에 개발된 .NET Framework 2.0 ~ 4.x 응용 프로그램을 Linux에서 실행해야 하는 경우 사용할 수 있습니다. 많은 기존 프로그램을 소스 수정 없이 또는 최소한의 수정만으로 실행할 수 있다는 장점이 있지만, 모든 기능이 100% 호환되는 것은 아닙니다. 또한 Mono는 기존 프로그램의 유지보수 및 이식 목적에 적합하며, 새로운 프로젝트에는 권장되지 않습니다. 장점: * 기존 .NET Framework 프로그램 재사용 가능 * 기존 소스를 크게 수정하지 않고 이식 가능 * WinForms 응용 프로그램 실행 가능 단점: * 최신 .NET 기술 사용 불가 * 일부 기능은 호환성 문제가 발생할 수 있음 * 신규 프로젝트에는 권장되지 않음 ===== 기술지원 정책 ===== 본 문서는 참고용으로만 제공되며, 이를 활용한 개발의 모든 책임은 개발자에게 있습니다. COMFILE Technology는 Visual Studio, .NET, C#, VB.NET 및 관련 개발 도구 자체에 대한 기술지원을 제공하지 않습니다. 이러한 개발 환경과 언어에 대한 문의는 Microsoft 및 관련 공식 문서를 참고하시기 바랍니다.