¿Por qué se eligió Java para Android, en lugar de algo como C ++? He escuchado que Java usa mucha memoria y supongo que el uso bajo de memoria sería bastante importante en los dispositivos móviles. ¿Existe alguna ventaja real de usar Java en lugar de un lenguaje como C ++ en un dispositivo móvil?
46
Respuestas:
Este artículo arroja algo de luz sobre la situación. El enlace más pertinente dentro de ese artículo es este . Por lo tanto, tiene una base de instalación masiva con muchos programadores que conocen el idioma y se enseña ampliamente en las universidades. C ++ se eliminó del plan de estudios de mi escuela, Java todavía está aquí. Java tiene Java ME que tiene una base de instalación masiva en otros teléfonos celulares. El Pantec Ease que tengo en mi bolsillo ahora tiene una pequeña taza de café en la esquina de la pantalla. ¿A alguien le importa adivinar qué es eso?
Esta respuesta en Stack Overflow también lo cubre bastante bien.
Resumen de la respuesta SO:
fuente
Me arriesgaré a adivinar que Google elige Java por familiaridad, por lo menos. Muchos de los proyectos de Google giran al menos conceptos de esquemas de Java (GWT por ejemplo).
Además, es un lenguaje ampliamente enseñado en las escuelas técnicas (a diferencia de, por ejemplo, Javascript (que Android también admite celosamente)). Java ciertamente no es el mejor lenguaje para un dispositivo móvil en términos de rendimiento y producción, pero es bien conocido.
También recuerda que Android llegó un poco tarde a la fiesta. Obligar a los desarrolladores a usar C ++, un lenguaje de compilación de bajo nivel, dificultaría la generación de un factor 'wow' y, como mínimo, Android necesitaba números (de aplicaciones) y destello para despegar.
fuente
No estoy seguro de por qué se eligió exactamente Java, pero probablemente fue por varias razones
Para capturar al gran grupo de desarrolladores que están familiarizados y usan Java
Llene el vacío móvil en Java, donde las tecnologías como J2ME, donde falta Java.
En segundo lugar, no hay Java Virtual Machine especificada para Android. En cambio, todo el código Java se compila para ejecutarse en Dalvik , que es una máquina virtual optimizada y liviana diseñada específicamente para ejecutarse en entornos móviles. Supuestamente mejora la duración de la batería y maximiza el uso eficiente de los recursos.
fuente