Todos mis usuarios tienen Windows. Algunos de ellos usan Linux o Mac, pero si lo hacen, generalmente son capaces de usar algo como Mono, Wine, Parallels o arranque dual.
Mi equipo de desarrollo (incluido yo mismo) tiene una amplia experiencia tanto en la escritura de aplicaciones Swing en Java como en Windows Forms en C #. "Extenso" significa que hemos desarrollado y enviado más de tres aplicaciones en ambos tiempos de ejecución. Las aplicaciones son aplicaciones de análisis técnico, tan leves en la interacción de la base de datos, pero pesadas en la IU personalizada y los tamaños de conjuntos de datos.
Estamos llegando al punto en el que realmente queremos tomar una decisión sobre en qué plataforma enfocarnos de ahora en adelante, ya que se está volviendo una carga apoyar a ambos (si está trabajando en Swing durante medio año, es demasiado complicado) acostumbrarnos nuevamente a Windows Forms y viceversa) y queremos que todos en nuestro equipo sean capaces de trabajar en todas nuestras aplicaciones.
- Windows Forms generalmente requiere menos trabajo para crear aplicaciones reconocibles de Windows. Ninguna cantidad de skinning y controles personalizados en Java lo ha resuelto a lo largo de los años. Al mismo tiempo, nunca hemos tenido un cliente que no pueda usar las aplicaciones Swing.
- Java solía tener un ecosistema mucho más rico en términos de bibliotecas y herramientas de compilación automatizadas, pero eso está cambiando rápidamente (Java no se está cayendo, es más que .NET se está poniendo al día).
- Para el raro caso de que se prefiera la multiplataforma, Java supera a .NET sin dudas. Mono es maravilloso, pero aún es más trabajo que Java.
Si elegimos .NET podemos comenzar a centrarnos en WPF, pero también comenzar a usar F #. Si elegimos Java, podemos comenzar a centrarnos en RCP, pero también comenzar a usar Scala.
¿Alguien ha tenido que tomar una decisión similar? Si es así, ¿qué fue y qué te influyó más? ¿Alguna de las principales preocupaciones que me estoy perdiendo?
(Tenga en cuenta: hay algunas preguntas similares sobre Programmers.SE ya, pero no son constructivas o desde un ángulo diferente).