C#/Winform 애플리케이션 크로스 플랫폼 만들기 - AIR, Mono 또는 다른 것을 사용해야 합니까?

StackOverflow https://stackoverflow.com/questions/72580

  •  09-06-2019
  •  | 
  •  

문제

C#/WinForms(내 작은 앱).크로스 플랫폼으로 만들기 위해 Adobe AIR에서 다시 할 생각입니다.크로스 플랫폼 앱으로서 WinForms를 선호하는 주장이 있습니까?Winforms(예: Mono 등)에 대한 크로스 플랫폼 미래가 있습니까?크로스 플랫폼 UI 개발을 위한 제안이 있나요?

크로스 플랫폼이란 현재 Mac OSX, Windows 및 Linux를 의미합니다.

이 질문은 다시 질문하고 더 나은 성공으로 대답했습니다..

도움이 되었습니까?

해결책

Adobe AIR에서 다시 할 생각이에요

AIR에 많은 시간을 투자하지 않았기 때문에 개인적인 의견으로는 웹 응용 프로그램을 데스크탑으로 가져오고 여기에 셸을 제공하거나 데스크탑에서 기존 flash/flex 프로젝트를 실행하는 것이 가장 좋다고 생각합니다.

그런데 ActionScript를 모른다면 세부 사항, 특이한 점 등을 알아보기 위해 인터넷 검색에 걸리는 시간을 고려하는 것을 잊지 마세요.

크로스 플랫폼 앱으로서 WinForms를 선호하는 주장이 있습니까?Winforms(예: Mono 등)에 대한 크로스 플랫폼 미래가 있습니까?

무슨 일이 일어날지 예측하는 것은 항상 어렵습니다. 하지만 제가 알고 있는 Win, Mac 및 Linux에서 Mono Winforms를 사용하는 프로젝트(Plastic SCM)가 하나 이상 있으므로 확실히 가능합니다.그러나 그들은 대부분의 컨트롤을 처음부터 구축했다고 말합니다(그리고 오픈 소스로 릴리스하고 싶지만 언제인지는 확실하지 않습니다). 따라서 "예쁘게" 보이도록 몇 가지 작업을 수행해야 합니다. .

저는 Windows가 아닌 플랫폼에서 Winforms를 사용해 보았지만 안타깝게도 정확히 "성숙"하지는 않았습니다(특히 Mac에서는).따라서 기본 제공되는 내용이 귀하의 요구 사항에 충분할 수도 있고 충분하지 않을 수도 있습니다.

데스크톱 앱이 크로스 플랫폼 솔루션을 제공하는 가장 좋은 방법이 아니라고 판단되면 언제든지 C#으로 작성된 비즈니스 논리를 사용하여 ASP.NET을 사용하여 완전한 웹 앱을 만들거나 Silverlight 등 다양한 옵션을 사용할 수 있습니다. C#과 함께 존재합니다.

다른 팁

Flex/AIR/Flash 액션스크립팅에 대한 내 경험에 따르면 Adobe AIR 개발 환경과 코딩/디버깅 도구 세트는 현재 Visual Studio 및 .NET SDK보다 훨씬 열등합니다.그러나 UI 도구 세트는 우수합니다.

그러나 ~함에 따라 이미 작동하는 C# 코드가 있습니다., ActionScript로 포팅하려면 ActionScript의 사고/프로그래밍 방식이 다르기 때문에 재설계가 필요할 수 있습니다. 그들은 서로 다른 기본 데이터 유형을 사용합니다. Number 대신에 int float double 등.VS IMO에 비해 디버깅 도구가 부족합니다.

그리고 나는 그것을 들었다 모노의 GtkSharp 조용하고 괜찮은 플랫폼입니다.

그러나 코딩/디버깅 도구 문제에 신경 쓰지 않는다면 AIR는 훌륭한 플랫폼입니다.나는 Adobe가 Flash 경험을 여기에 통합하는 방식을 좋아합니다.플래시 동영상 클립의 버튼 클릭을 통해 AIR 애플리케이션 설치를 시작할 수 있습니다. 이러한 통합이 가능합니다.

WinForms는 Mono에서 완벽하게 지원되므로 크로스 플랫폼입니다.

왜 Air와 함께 하시겠습니까?

사용 GTK#, 크로스 플랫폼 양식 엔진이 있고 C# 코드를 유지하게 됩니다.

글쎄요, C#을 사용하여 크로스 플랫폼을 안정적으로 구현하는 유일한 방법은 다음과 같습니다. 마이크로 소프트 실버 라이트, 그러나 실제로는 WinForms가 아니며 브라우저 기반입니다.그 외에는 그렇습니다. Mono는 기회입니다.

.net Framework를 사용하고 싶다면 Microsoft Silverlight가 좋은(유일한?) 선택입니다.브라우저는 셸 역할을 훌륭하게 수행하지만 이를 위한 애플리케이션 셸을 직접 작성할 수도 있습니다.예를 들어 스콧 헨델만 언급하다 NY Times Reader는 Silverlight로 작성되었으며 Hostet은 Mac의 Cocoa에서 작성되었습니다.

저는 WinForms에 미래가 전혀 없다고 생각합니다.MSFT 세계(Win32 주변의 매우 얇은 래퍼)에서도 임시방편 솔루션인 것처럼 보이기 때문입니다.그리고 .NET 3.0과 3.5 모두에서 System.Windows.Forms에는 사실상 변경 사항이 없는 것 같습니다.

</speculation>

저는 Java나 Air를 사용하겠습니다.

나는 당신이 작성하는 비즈니스 로직 코드가 크로스 플랫폼(예:경로에 백슬래시를 사용하는 것은 Windows에서만 작동합니다. 슬래시는 모든 OS에서 작동합니다. 그러면 Mono는 수정되지 않은 WinForms 프로그램을 실행하는 데 큰 문제가 없어야 합니다.그래픽 결함이 있는지 테스트하세요.

지난주에도 비슷한 질문을 했습니다.나는 계속해서 Mono를 사용해 왔으며 SuSE Linux(보통 KDE를 실행함) 또는 Windows에서 실행하기 위해 IL로 컴파일한 응용 프로그램을 실행하는 데 아무런 문제가 없었지만 아직 Mac을 사용하여 테스트하지는 않았습니다. 그것에.하지만 곧, 아마도 몇 주 안에 도착할 것입니다.그러나 Mono의 모든 개발은 여러 플랫폼에서 실행되는 응용 프로그램을 만드는 데 매우 뛰어났습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top