¿Qué lenguaje de programación es mejor para desarrollar una aplicación que se ejecute en Mac y Windows?

No hay una respuesta fácil para esto.

Lo que hacemos:

  • Cuidadosamente haga los casos de uso para el software desde el punto de vista del cliente. No continúe hasta que haya validado los casos de uso “IS” y los casos de uso “DEBERÍA”.
  • Itere el diseño de los casos de uso “DEBERÍA” frente a su diseño de interfaz de usuario.
  • Desarrolle cuidadosamente la arquitectura MVC correcta para la aplicación: pase más tiempo en esto que lo que gasta en la codificación y NUNCA comience con la codificación antes de que se resuelva el MVC.
  • Hacer UI para Mac en Xcode y ObjC o Swift
  • Hacer interfaz de usuario para Linux / Windows en Qt y C ++
  • Hacer el modelo de fondo en C ++; es trivial envolver C ++ como ObjC

La razón para usar diferentes interfaces de usuario es porque la interfaz de usuario de Apple está muy bien desarrollada y funciona mejor con las herramientas de Xcode. Qt es bueno para multiplataforma entre Linux y Windows: técnicamente puede usarlo incluso para Mac, pero no es tan flexible o bonito, y si se lanza en la tienda de aplicaciones de Apple, Xcode es el único camino a seguir.

La parte del modelo depende menos de la plataforma en la que se encuentre, por lo que siempre que haya diseñado bien los componentes MVC, el entorno no importa tanto y se reduce principalmente al lenguaje.

Para la independencia de la plataforma, necesita un lenguaje interpretado (o jitted o compilado justo a tiempo), y tanto Python como Java encajan perfectamente en este aspecto.

Java, .net core, python