¿Por qué se eligió Java para Android?

45

¿Por qué se eligió Java para Android, en lugar de algo como C ++? He escuchado que Java usa bastante memoria y supongo que un bajo uso de memoria sería bastante importante en dispositivos móviles. ¿Existe alguna ventaja real de usar Java en lugar de un lenguaje como C ++ en un dispositivo móvil?

    
pregunta cgt 21.03.2012 - 14:23

3 respuestas

38

Este artículo arroja algo de luz sobre la situación. El enlace más pertinente dentro de ese artículo es this . Así que tienes una base de instalación masiva con muchos programadores que conocen el idioma y se enseña ampliamente en las universidades. C ++ fue eliminado del currículo 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. ¿Alguien quiere adivinar qué es eso?

Esta respuesta en Stack Overflow lo cubre también bastante bien.

Resumen de la respuesta SO:

  

java es un lenguaje conocido, los desarrolladores lo saben y no tienen que aprenderlo

     

es más difícil dispararte con java que con c, c ++ código, ya que no tiene aritmética de punteros

     

se ejecuta en una máquina virtual, por lo que no es necesario volver a compilarlo para cada teléfono y es fácil de proteger

     

gran número de herramientas de desarrollo para Java (ver primero)

     

varios teléfonos móviles ya usaban java me, por lo que java era conocido en la industria

     

la diferencia de velocidad no es un problema para la mayoría de las aplicaciones, si lo fuera, debería codificar en el ensamblaje

    
respondido por el World Engineer 21.03.2012 - 14:30
17

Me atrevo a suponer que Google elija Java por familiaridad, si no otra cosa. Muchos de los proyectos de Google giran al menos conceptos de esquemas de Java (GWT, por ejemplo).

Además, es un idioma que se enseña ampliamente en las escuelas técnicas (a diferencia de, por ejemplo, Javascript (que también es compatible con Android)). Sin duda, Java 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. Forzar a los desarrolladores a usar C ++, un lenguaje de compilación de bajo nivel, haría más difícil generar un factor sorpresa, y, como mínimo, Android necesitaba números (de aplicaciones) y destellos para despegar.

    
respondido por el Jeffrey Sweeney 21.03.2012 - 14:36
8

No estoy seguro de por qué se eligió exactamente Java, pero probablemente fue por varias razones

  1. Para capturar el gran grupo de desarrolladores que están familiarizados con Java

  2. Llene la brecha móvil en Java donde tecnologías como J2ME carecen de Java.

En segundo lugar, no hay una máquina virtual Java especificada para Android. En su lugar, todo el código Java se compila para ejecutarse en Dalvik , que es una máquina virtual ligera y optimizada diseñada específicamente para funcionar en entornos móviles. Supuestamente, mejora la vida útil de la batería y maximiza el uso eficiente de los recursos.

    
respondido por el maple_shaft 21.03.2012 - 14:30

Lea otras preguntas en las etiquetas