¿Qué tan diferente es Java para JRE vs Java para Android?

13

Soy nuevo en todo el desarrollo de este juego y estoy empezando a aprender Java porque me dijeron que era una excelente manera de comenzar. Más tarde quiero crear juegos para el mercado de Android, y quiero obtener una buena vista de ustedes, así que sé exactamente a qué me estoy enfrentando.

Me doy cuenta de que el desarrollo de Android tiene diferentes arquitecturas y otras cosas (¿es una buena forma de decirlo?)

¡Gracias!

Sin alas
fuente
44
Por lo que vale, las aplicaciones de Android generalmente están escritas en Java. La diferencia entre los dos es que "Android" es un sistema operativo y "Java" es un lenguaje de programación. Sirven para diferentes propósitos (no superpuestos).
dash-tom-bang
Se aclaró el título de la pregunta de OP.
Ingeniero

Respuestas:

13

Para crear aplicaciones de Android, utiliza Java y las bibliotecas de extensión que proporciona Android. Estas no son extensiones en el lenguaje Java; Me refiero a las bibliotecas que se envían con Android para ayudarlo a lograr las cosas comunes que querría hacer en un teléfono celular.

Por ejemplo, Blackberry ( otro sistema operativo móvil basado en Java ) usa Java como el idioma de elección, e Research In Motion proporciona un conjunto de bibliotecas en el paquete RIM que me ayuda a abstraer cosas que normalmente hago en mi teléfono.

Puede usar Java puro, pero la mayoría de las veces desea usar las bibliotecas RIM proporcionadas por RIM.

Si es completamente nuevo en programación, le recomendaría primero aprender buenos principios de Java: clases, métodos, programación orientada a objetos, etc. luego aprender la API de Android proporcionada por Google. Si aprende Android primero, se confundirá rápidamente y no seguirá las buenas prácticas de programación.

Recomiendo comenzar con el libro Head First Java .


fuente
4

Android usa su propia implementación de Java. Escribe código de sintaxis de Java y puede usar muchas API de Java, pero hay muchas diferencias:

  • Las aplicaciones de Android tienen un ciclo de vida especial:
    • sin función principal
    • sus aplicaciones contienen actividades con onCreate, onResume, onPause, onDestroy funciones que debe anular
  • El código se compila en códigos de operación Dalvik (no código de bytes Java);
  • Muchas API son similares, pero no tiene todas las API J2SE. Debe verificar en el sitio del desarrollador ;
  • Muchas API están limitadas a Android (Contactos, Administración de energía, Gráficos ...);
  • IHM son solo para Android (sin Swing, sin JavaFX ...). Debe usar XML para declarar su GUI;
  • puede usar java jars (si solo usan API compatibles) pero se convierten en dalvik.

Entonces, es como una nueva plataforma; pero, si conoces Java, es muy fácil de desarrollar en Android. Descargue el SDK e intente jugar con las muestras proporcionadas y personalícelas. Puede usar un buen IDE como Eclipse e Idea (el complemento de Android llegará en las ediciones de la comunidad Idea 10).

Para geeks C / C ++, puede usar NDK (Native Development Kit) pero necesita un código de arranque Java y conocimiento JNI.

Ellis
fuente