내 사용자는 모두 Windows를 가지고 있습니다. 그들 중 일부는 Linux 또는 Mac을 사용하지만 일반적으로 Mono, Wine, Parallels 또는 dual-boot와 같은 것을 사용할 수 있습니다.
저 자신을 포함한 저의 개발 팀은 Java로 Swing 응용 프로그램을 작성하고 C #으로 Windows Forms를 작성하는 데 광범위한 경험을 가지고 있습니다. "Extensive"는 두 런타임 모두에서 3 가지 이상의 응용 프로그램을 개발하여 제공했음을 의미합니다. 이 응용 프로그램은 기술 분석 응용 프로그램이므로 데이터베이스 상호 작용에는 약하지만 사용자 정의 UI 및 데이터 세트 크기에는 무겁습니다.
우리는 지금 어느 플랫폼에 초점을 둘 것인지에 대한 결정을 내리고 자하는 시점에 이르렀습니다. 두 플랫폼을 모두 지원해야하는 부담이 되었기 때문입니다. Windows Forms에 다시 익숙해지고 다른 방법으로 돌아갑니다) 팀의 모든 사람이 모든 응용 프로그램에서 작업 할 수 있기를 바랍니다.
- Windows Forms는 일반적으로 인식 가능한 Windows 응용 프로그램을 만드는 데 더 적은 노력을 기울입니다. Java에서 스키닝 및 사용자 정의 컨트롤의 양은 수년 동안 해결되지 않았습니다. 동시에 Swing 애플리케이션을 사용할 수없는 고객은 없었습니다.
- Java는 라이브러리 및 자동화 된 빌드 도구 측면에서 훨씬 더 풍부한 에코 시스템을 가지고 있었지만 빠르게 변화하고 있습니다 (Java는 다운되지 않고 .NET은 따라 잡습니다).
- 드문 경우이지만 다중 플랫폼이 선호되는 경우 Java가 .NET보다 우선합니다. 모노는 훌륭하지만 여전히 Java보다 더 많은 작업입니다.
.NET을 선택하면 WPF에 중점을 둘 수 있지만 F #을 사용할 수 있습니다. Java를 선택하면 RCP에 집중할 수 있지만 Scala도 사용할 수 있습니다.
누구도 비슷한 결정을 내려야 했습니까? 그렇다면 무엇이며 무엇이 가장 영향을 미쳤습니까? 내가 놓친 가장 큰 문제는 무엇입니까?
(참고 : Programmers.SE에는 이미 비슷한 질문이 있지만 구성이 틀리거나 다른 각도로되어 있습니다.)