차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판이전 판
다음 판
이전 판
comfilepi:dotnet:index [2026/02/16 22:23] – [.NET Framework 4를 선택해야 하는 경우] admincomfilepi:dotnet:index [2026/06/09 17:28] (현재) – removed admin
줄 1: 줄 1:
-====== .NET (C# & VB.Net) ====== 
  
-.NET 생태계는 현재 두 가지 계열로 구분됩니다. 
- 
-  * **“.NET Framework”**   
-    → 버전 4.x까지의 기존 .NET Framework를 의미합니다. 
- 
-  * **“.NET”**   
-    → .NET 5 이후 버전을 의미하며 (이전 명칭: .NET Core), 현재는 .NET 10까지 발전했습니다. 
- 
-ComfilePi와 같은 Linux 기반 패널 PC에서는 다음과 같은 방식으로 WinForms 애플리케이션을 실행할 수 있습니다. 
- 
-  - .NET Framework 4 애플리케이션을 Mono 런타임에서 실행 
-  - .NET 5 이상 + Mono WinForms 포팅 라이브러리 (예: ComfileTech.WinForms) 사용 
- 
-특별한 이유가 없다면 최신 .NET 버전을 사용하는 것을 권장합니다. 
- 
- 
- 
-===== .NET 5 이상을 선택해야 하는 경우 ===== 
- 
-ComfilePi에서 .NET 사용 방법:   
-[[:comfilepi:dotnet_core_development:|ComfilePi에서 .NET 사용하기]] 
- 
-다음과 같은 경우 .NET 사용을 고려할 수 있습니다. 
- 
-  * 신규 솔루션을 개발하는 경우 
-  * 개발자가 Linux를 지원하는 크로스플랫폼 UI 프레임워크 사용이 가능한 경우 
-    * Blazor 
-    * Avalonia 
-    * Uno Platform 
-    * Eto.Forms 
-    * Gir.Core 등 
-  * 또는 Mono WinForms 포팅 라이브러리 (ComfileTech.WinForms)를 사용할 수 있는 경우 
-  * 보다 현대적인 WinForms UI를 원한다면 jControls 라이브러리를 사용할 수 있습니다. 
- 
-애플리케이션을 다양한 플랫폼에서 실행할 수 있도록 하는 가장 좋은 방법 중 하나는 Blazor를 사용하는 것입니다.   
-UI를 하나의 .NET 어셈블리로 구성하면 웹 브라우저에서 원격 실행이 가능하며, Blazor Hybrid를 사용하면 다양한 플랫폼에서 WebView 형태로 UI를 실행할 수 있습니다.   
-Linux 환경에서는 BlazorWebView 프로젝트를 사용할 수 있습니다. 
- 
-※ 참고: .NET MAUI는 현재 Linux를 지원하지 않습니다. 
- 
-==== 장점 ==== 
- 
-  * Microsoft에서 지속적으로 개발 및 유지관리 중 
-  * 매년 새로운 기능, 성능 개선, 개발 도구 향상 제공 
-  * 네이티브 컴파일 가능 → 성능 향상 및 역공학 방지 
-  * 다른 언어(C, Python 등)에서 사용할 수 있는 라이브러리 제작 가능 
-  * 크로스플랫폼 UI 프레임워크 선택 시 가장 넓은 플랫폼 지원 
-    * Windows 
-    * Linux 
-    * Android 
-    * macOS 
-    * iOS 
-    * 웹 브라우저 
- 
-==== 단점 ==== 
- 
-  * WinForms 사용 시 Linux에서 실행하려면 Mono WinForms 포팅 필요 
-  * 크로스플랫폼 UI 사용 시 WinForms처럼 WYSIWYG 디자이너 사용이 어려울 수 있음 
-  * WinForms Linux 실행에는 Mono 기반 라이브러리가 필요 
- 
- 
- 
-===== .NET Framework 4를 선택해야 하는 경우 ===== 
- 
-ComfilePi에서 .NET Framework 사용 방법:  [[..:comfilepinetenvironment:index|컴파일파이에서 .NET (닷넷) 프레임웍 과 Mono 사용하기]] 
- 
-다음과 같은 경우 적합합니다. 
- 
-  * 기존 .NET Framework 2.0 ~ 4.x 애플리케이션을 Linux로 포팅해야 하는 경우 
-  * 개발자가 WinForms만 익숙하고 크로스플랫폼 UI 경험이 없는 경우 
- 
-==== 장점 ==== 
- 
-  * Windows에서 네이티브 실행 가능 
-  * Linux에서는 Mono를 통해 실행 가능 
-  * WinForms 경험이 있는 개발자라면 새로운 UI 프레임워크 학습이 필요 없음 
- 
-==== 단점 ==== 
- 
-  * 향후 점진적으로 지원 축소(Deprecated) 예정 
-  * Linux Mono 구현이 완벽하지 않아 추가 작업 필요할 수 있음 
-  * Windows 또는 Mono가 있는 환경에서만 실행 가능 
-  * 네이티브 컴파일 불가 → 코드 역분석 가능 
- 
- 
- 
-===== .NET 5 이상과 .NET Framework 4를 동시에 지원하려면 ===== 
- 
-두 환경 모두에서 사용할 라이브러리를 개발해야 한다면   
-**.NET Standard 2.0**을 사용하는 것이 좋습니다. 
- 
-이 경우 주로 다음과 같은 공통 유틸리티 라이브러리 개발에 적합합니다. 
- 
-  * Modbus 통신 
-  * GPIO 제어 
-  * I2C 
-  * 시리얼 통신 
-  * TCP/IP 통신 등 
- 
-이를 통해 애플리케이션의 이식성을 크게 높일 수 있습니다. 
- 
- 
- 
-===== 기술 지원 정책 ===== 
- 
-COMFILE Technology는 Visual Studio 및 .NET 기술 자체에 대한 기술 지원을 제공하지 않습니다.   
-해당 기술에 대한 지원은 Microsoft를 통해 문의하시기 바랍니다. 
- 
- 
- 
-[[comfilepi:index|ComfilePi - 산업용 라즈베리파이 패널 PC]]