martes, 10 de junio de 2014

Quiero desarrollar Aplicaciones Android - ¿Qué lenguajes debo aprender?

Eclipse_4.2_Juno_screenshot

Incluso si usted no piensa que estamos plenamente en la era Post-PC, es claro que las plataformas móviles juegan un papel esencial en muchas partes de nuestras vidas. Ya sea por diversión o con fines de lucro, el desarrollo de aplicaciones para Android puede ser gratificante, tanto personal como financiero. Asumiendo que tiene un cierto nivel de conocimiento técnico, entonces es posible desarrollar aplicaciones de Android a ti mismo, pero las lenguas ¿Qué programación que usted necesita para aprender?

El idioma oficial para el desarrollo de Android es Java. Grandes partes de Android están escritas en Java y sus APIs están diseñados para ser llamado principalmente de Java. Es posible desarrollar C y C + + app usando elKit de Desarrollo de Android nativo(NDK), sin embargo no es algo que Google promover. Según Google, "el NDK no beneficiará a la mayoría de aplicaciones. Como desarrollador, usted necesita para equilibrar sus ventajas frente a las desventajas. En particular, el uso de código nativo en Android en general no se traduce en una mejora de rendimiento notable, pero siempre aumenta su complejidad aplicación ".

Java

El trabajo de estas máquinas virtuales es interpretar el código de bytes.

Java es un lenguaje de programación primero lanzado por Sun Microsystems en 1995. Puede ser encontrado en muchos tipos diferentes de dispositivos de teléfonos inteligentes, para las computadoras mainframe. Se puede utilizar en el PC e incluso en el Raspberry Pi. Java no se compila a código nativo del procesador, sino que se basa en una "máquina virtual", que comprende un formato intermedio llamado bytecode Java. Cada plataforma que se ejecuta Java necesita una máquina virtual de ejecución (VM). En Android la VM original se llama Dalvik. Google también ha comenzado la vista previa de su próxima generación VM llama ART. El trabajo de estas máquinas virtuales es interpretar el bytecode, que es en realidad un conjunto de instrucciones similar al código de máquina que se encuentra en las CPUs, y ejecutar el programa en el procesador. Las máquinas virtuales utilizan una variedad de tecnologías, incluyendo la compilación Just-in-time (JIT) y la compilación antes de tiempo (AOT) para acelerar los procesos.

Lo que todo esto significa es que usted puede desarrollar aplicaciones de Android en Windows, Linux o OS X y el compilador Java convierte el código fuente en código de bytes. Esto a su vez se ejecuta en la máquina virtual incorporada para Android. Esto es diferente al modelo utilizado por iOS que utiliza un compilador nativo para convertir Objective-C en código máquina ARM.

He aquí un ejemplo de lo que se ve un poco de Java como. En este ejemplo se utiliza una mirada anidada para imprimir cadenas cada vez más largas de asteriscos:

for (int i = 0; i <5; i + +) {
  for (int j = 0; j <= i; j + +) {
    System.out.print (\ "* \");
  }
  System.out.println ();
}

Este es un ejemplo muy simple y el código real para una aplicación real es mucho más compleja.

Hay un montón de tutoriales en línea para aprender Java. Éstos son algunos de Oracle:

  • Primeros pasos- Una introducción a la tecnología Java y lecciones sobre la instalación de software de desarrollo de Java y su utilización para crear un programa simple.
  • El lenguaje Java- Lecciones que describen los conceptos esenciales y las características del lenguaje de programación Java.
  • Clases Esenciales Java- Lecciones sobre excepciones, entrada / salida básico, concurrencia, expresiones regulares, y el entorno de la plataforma.

También puede ser que desee mirar a los siguientes tutoriales:

Google ofrece Android Developer Tools (ADT) bundle que incluye el SDK, una versión del IDE de Eclipse con los plugins de ADT, y la plataforma-tools Android con el emulador de Android.

Una vez que has aprendido Java, el siguiente paso es aprender a utilizar Java para crear aplicaciones de Android. Para eso se necesita elKit de desarrollo de software para Android(SDK). El SDK de Android proporciona todas las bibliotecas y herramientas que necesita construir una aplicación para Android API. Google ofrece las herramientas de desarrollo de Android (ADT) bundle que incluye el SDK, una versión del IDE de Eclipse con los plugins de ADT, y la plataforma-tools Android con el emulador de Android.

El desarrollo de una aplicación para Android es más que Java, es necesario entender cómo se construye la interfaz de usuario de Android (en XML), y la forma de acceder a los distintos subsistemas de Android. Google tiene una serie detutoriales sobre el desarrollo de Android. LaGetting Started Tutorialte muestra lo esencial de desarrollo de aplicaciones Android.

Corona

CoronaSDK-code-and-emulatorSi usted no quiere aprender Java o cómo diseñar interfaces de usuario en XML, hay alternativas. Una es usar elCorona SDK. Corona es un SDK de alto nivel basado en el lenguaje de programación LUA. LUA es mucho más simple de aprender que Java y el SDK le quita una gran parte del dolor en el desarrollo de aplicaciones Android. Una aplicación sencilla que muestra una imagen de fondo de su elección y escribe un texto en la pantalla se puede escribir en sólo 3 líneas de código con Corona.

Esto es lo que un cierto código LUA parece, esta hace lo mismo que el código Java arriba:

para i = 1,5 do
  para j = 1, hago
    io.write (\ "* \")
  final
  io.write (\ "\ n \")
final

Este es el programa de 3 líneas para mostrar una imagen de fondo y escribir algún texto en la pantalla:

antecedentes locales = display.newImage (\ "miimagen.jpg \", display.contentCenterX,
                                                     display.contentCenterY)
myText locales = display.newText (\ "¡Hola, mundo! \", display.contentCenterX,
                              display.contentWidth / 4, native.systemFont, 40)
myText: setFillColor (1, 110/255, 110/255)

La primera línea carga la imagen de fondo, la segunda línea muestra el texto, y la tercera línea establece el color del texto. Sencillo.

Casi todo en la Corona se visualiza a través de OpenGL.

Corona incluye un emulador sofisticado que le permite ejecutar su programa al instante sin necesidad de compilar el código. Cuando desee crear un archivo apk Android. Comienzas una acumulación a través de los compiladores en línea de Corona y la aplicación se guarda en su PC.

Corona está diseñado principalmente para los juegos (pero no exclusivamente) y, como tal, incluye bibliotecas para sprites, audio, redes de juegos y un motor de física 2D. Casi todo en la Corona se visualiza a través de OpenGL. Esto significa que usted obtiene GPU aceleración de gráficos, además de la aplicación por defecto es un lienzo en blanco, todo lo que tiene que hacer es empezar a pintar!

Corona ofrece un conjunto integral deguías y tutoriales Cómo empezarincluyendo unIntroducción a Lua, Además de unCorona en 5 minutosguía, que también incluye una introducción a la física del motor 2D.

Corona es libre de descargar y utilizar, pero si quieres características como las compras in-app o la capacidad de llamar a las API nativas de Android que necesita para pagar una cuota de suscripción mensual.

Phonegap

Phonegap+JavascriptSi ya sabes HTML, CSS, Javascript y lo más importante, a continuación, en lugar de aprender Java o LUA, puede crear aplicaciones Android usando las habilidades que ya tienes.Phonegapestá basado en el proyecto de Córdoba Apache. Básicamente se crea una webview que luego se puede rellenar y manipular usando Javascript. La aplicación web puede interactuar con las distintas funciones del dispositivo, como una aplicación nativa, haciendo referencia al archivo cordova.js para obtener los enlaces de la API. Las funciones nativas que apoyan PhoneGap son el acelerómetro, la cámara, la ubicación actual, el almacenamiento local y así sucesivamente.

He aquí cómo lo haría la salida de los asteriscos de una página web a través de Javascript:

i var, j;
for (i = 1; i <= 5; i + = 1) {
  s ='';
  for (j = 0; j     s + = '*';
  document.write (s + '
');
}

Otras opciones y terminar

Java, LUA y HTML / Javascript no son las únicas opciones que existen. Por último cabe mencionarTitanio, Otro sistema de desarrollo de Javascript, yGamesalad, Un creador de juegos para móviles que te permite crear juegos sin hacer ningún tipo de codificación!

Si usted tiene alguna experiencia en el uso de ninguno de estos sistemas de desarrollo, o si desea recomendar uno diferente, por favor deje un comentario más abajo.

No hay comentarios:

Publicar un comentario