Como dar tus primeros pasos en Android

Estás medio mareado. Viste mis artículos de Android y te empezó a interesar el tema pero te parecen complicados porque apuntan a temas puntuales. Leiste de arriba a abajo el Curso de Android pero no te animás a pagar por algo que no estás tan seguro de aprender. Pero llegaste al lugar indicado: hoy voy a guiarte por todo lo que necesitas saber para aprender esta hermosa tecnología, desde material hasta conceptos y recursos. Empecemos!

Qué es Android?

Definición de Wikipedia:

Android es un sistema operativo basado en el núcleo Linux. Fue diseñado principalmente para dispositivos móviles con pantalla táctil, como teléfonos inteligentes, tablets o tabléfonos; y también para relojes inteligentes, televisores y automóviles. Inicialmente fue desarrollado por Android Inc., empresa que Google respaldó económicamente y más tarde, en 2005, compró. Android fue presentado en 2007 junto la fundación del Open Handset Alliance (un consorcio de compañías de hardware, software y telecomunicaciones) para avanzar en los estándares abiertos de los dispositivos móviles. El primer móvil con el sistema operativo Android fue el HTC Dream y se vendió en octubre de 2008. Los dispositivos de Android venden más que las ventas combinadas de Windows Phone e IOS.

Un concepto condimentado con un poco de historia, si, pero lo que nos interesa a nosotros es algo más como “Que va a hacer Android con nosotros?”. Una pregunta rara, lo se, pero paso a explicarla: Se trata de como Android va a afectar nuestra vida como programadores. No podemos arrancar a programar sin una meta, sin un objetivo. Necesitamos algo que alimente nuestra motivación porque sino cuando nos crucemos con los primeros conflictos vamos a preguntarnos por qué elegimos esto.

La verdad es que Android se ramifica y lo divertido es que vamos a poder explorar todas las ramas. Como dice Wikipedia, vamos a poder programar para muchos dispositivos además de los móviles. Teniendo esto en cuenta, la meta que tomemos puede bifurcar por muchos lados:

  • Quiero programar aplicaciones de geolocalizacion (dispositivos móviles)
  • Quiero programar algo como Netflix (Android TV)
  • Quiero programar una app para correr (Android Wear)
  • Quiero programar una app que se integre con Google Maps (Android Auto)

Esos son meros ejemplos de metas pero la realidad es que hay muchos más y en el momento en que están leyendo esto, seguro se les están ocurriendo todavía más. Entonces vamos a lo siguiente: Cómo empiezo?

Cómo Empezar?

Cuando yo empecé lo hice con videotutoriales y no me avergüenzo de nada. Muchos pueden decir que lo hicieron leyendo montones de libros y no está mal. De hecho yo cuando entendí como era la movida, leí muchos libros para reforzar los fundamentos. Entonces, empecemos por Youtube: Hay muchos youtubers, es sabido, que hacen cursos y tutoriales de programación. Pero hay riesgos. No todos enseñan bien, sea porque aprendieron mal o quieren enseñar rápido, y esto nos puede jugar en contra. Por eso les voy a pasar algunos de confianza que después de unos años aprendiendo con ellos pude asegurarme de que saben lo que hacen.

Thenewboston es un canal supervisado por varios youtubers que enseñan varias tecnologías, entre ellas Android. Esta es una de los últimas listas que armaron puntualmente sobre Android Studio, un IDE que deben conseguir obligatoriamente. Con esto quiero decir que no usen Eclipse. Tienen otra lista mas antigua en el tiempo donde se usaba este viejo IDE pero es mas completa en lo que refiere a conceptos del lenguaje.

Si no les gusta el inglés, el canal de Codigo Facilito tiene buenos tutoriales también. Aunque no son tan avanzados como los que mencioné anteriormente.

Con estos videos ya van a dar sus primeros pasos programando Android.

Libros y Documentación

Los videos nos van a dar muchos recursos, pero si quieren profundizar en el tema, tienen que leer. Y mucho. Lo primero que deberían leer es la documentación oficial de android. Tanto la de principios de diseño como la de programación. La actualizan todo el tiempo y además la necesitamos cerca cuando tenemos que conocer el funcionamiento de una sentencia, evento, método en el API Guide.

Otros libros que pueden leer son los siguientes:

Este ultimo libro mencionado es de O’Reilly, desarrolladora de los mejores libros de programación y sistemas a nivel mundial.

Refuerzo Fundamental

Android es un lenguaje que se une a Java a través de su SDK (Software Development Kit). Esto nos deja una sola conclusión: Hay que saber Java. Claro que se puede aprender Android sin esto, pero si vamos a ser programadores que realmente se metan en el tema, tenemos que saber Java. Para nuestro alivio, Java es fácil. Hay varios libros de O’Reilly que lo enseñan y si quieren uno en español que me gustó bastante se llama Java 2 del autor Ceballos. Es enorme y tiene todo lo necesario para entender los fundamentos de Java. Con saber como manejar el lenguaje alcanza, no recomiendo que se metan con algún framework porque ya es otra área.

Recursos Online y Material de Lectura Obligada

En el día a día laboral uno se va encontrando en internet cosas muy interesantes. Algunos son recursos que usamos a diario, otros blogs de consulta y otros de reflexión. Les voy a pasar una serie de links avocados a una lectura obligada que todo futuro o actual programador debe saber:

  • Consejos para los programadores Junior: Un artículo muy interesante para los que están terminando los estudios y quieren trabajar como programadores.
  • Play Store: No es algo nuevo, pero si cabe aclarar que acá es donde vas a ver publicadas tus apps.
  • Android Arsenal: Un excelente sitio de recursos que van tomando de GitHub, donde podemos extraer muy buenas librerías para nuestros proyectos.
  • Gradle, Please: Un sitio para conseguir las dependencias de determinada librería en Gradle.
  • Android UI Paterns: Un blog para aprender sobre patrones de diseño de Android.
  • Launcher Icon Generator: Cuando necesitamos iconos temporales para nuestra app, podemos usar esta herramienta.
  • Simple Nine-Patch Generator: Le pasamos una imagen y nos la devuelve en todas tus densidades.
  • Vuforia Developer Portal: Libreria para armar apps de realidad aumentada.
  • GitHub: Sitio donde podemos encontrar miles de repositorios de código en git.
  • Bitbucket: Con GitHub creamos repositorios públicos, pero con este sitio podemos crear privados.

Conclusión

Como futuros desarrolladores tenemos que saber que todo lenguaje tiene sus ventajas y desventajas. Android es un lenguaje que permite hacer muchas cosas pero a la vez tiene sus complicaciones a la hora de probar en varios dispositivos. Esto ocurre porque a diferencia de iOS, Android es un sistema libre que puede tomarlo cualquier empresa de compañía móvil y distribuidoras y crear el suyo. Es un sistema pensado para adaptarse, pero también es modificable. Por eso recomiendo comprar dispositivos Nexus, porque los hace Google conjunto de una determinada fabricante (en la version 5 fue LG, por ejemplo) y nos aseguramos que no tiene ninguna modificación comercial que afecte su rendimiento.

Otro punto a tomar en cuenta son las versiones. Cada versión tiene sus cosas y a veces un efecto puntual en Lollipop no funciona en KitKat. Por suerte Android sigue trabajando en librerías de compatibilidad que van acortando esta brecha cada vez con mejores resultados.

Mi mejor consejo es que no se queden solo con Android, exploren sobre la idea de ser un Full Stack Developer. Desarrollen apps frontend que peguen a APIs, pero tambien desarrollen esos mismos servicios. Hagan Web y Mobile y den una vuelta por Objective C o Swift. Nunca se queden estancados en una sola tecnología, exploren y descubran!

1 Comment on "Como dar tus primeros pasos en Android"

  1. Muy bueno tu blog. Bajando Android Studio.

Leave a comment

Your email address will not be published.


*