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.
- ¿Cuál es el mejor software para crear diapositivas?
- ¿Existen buenas bibliotecas de software que modelen con precisión la mezcla de diferentes colores?
- ¿Qué software de gestión de proyectos se integrará con Quickbooks en tiempo real?
- ¿Qué significa realmente que Periscope sea nombrado la Aplicación del Año de Apple?
- ¿Cómo es trabajar como desarrollador de software para una empresa en Japón?
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.