Solo estoy especulando un poco aquí, pero después de haber programado en C ++ durante 20 años más o menos y Java durante los últimos 10 años, una cosa que definitivamente puedo pensar es la seguridad del código. Hay muchas vulnerabilidades de seguridad (cosas como desbordamientos de búfer, inyección de código en la pila, etc.) que son mucho más difíciles para Java pero muy fáciles en C ++. Además, la administración de memoria es mucho más fácil en Java que C ++. También descubrí que Java era una curva de aprendizaje más corta que C ++ (¿tal vez porque tenía más experiencia cuando la aprendí?).
Otra cosa que consideré al elegir C ++ o Java para un nuevo proyecto hace unos 6 años fue el soporte de la biblioteca. Hay bibliotecas estándar en Java para E / S de socket y archivos, manipulación de fecha / hora, criptografía, MIDI (música), y así sucesivamente. Algunos de estos existen (en Boost, por ejemplo) para C ++, pero de ninguna manera son omnipresentes, ni hay nada cerca de la amplitud de soporte de biblioteca que existe para Java. Tampoco hay miles de bibliotecas de código abierto (piense en la mayoría de los proyectos de Apache) escritas en Java. Entonces, hay muchas más cosas para elegir que con C ++.
Nuevamente, dado que no estaba (ni remotamente) involucrado con esta decisión, estas son especulaciones de mi parte, pero informadas de mis propias decisiones.
- Cómo crear una aplicación de Android que cargue automáticamente todos los datos del usuario en el servidor
- ¿Qué herramienta debo saber para un desarrollador de Android?
- Cómo dejar de ser un desarrollador promedio de Android
- ¿Android se actualiza en serie o solo directamente a la última versión?
- ¿Es segura la aplicación de Android Ozoneplay?