Ya hemos hablado sobre programación nativa (Aprende Android en 20 conceptos), sobre otras APIs a utilizar, como por ejemplo Xamarin. Pero a veces necesitamos información adicional o herramientas adicionales que nos faciliten ciertos aspectos de la programación.
Hoy vamos a hablar de algunas herramientas, librerías o blogs que son útiles para todo aquel desarrollador de Android. Allá va nuestra lista de imprescindibles.
Mejores herramientas para desarrolladores Android
OkHttp
Este producto de Square es una librería para HTTP de código abierto para Android y Java que nos permite solucionar algunos problemas con los que se encuentra el desarrollador que trabaja con HTTP. Está construida sobre HttpUrlConnection, por lo que la API nos debería resultar similar. Además, gestiona las actualizaciones de forma que no tengamos quebraderos de cabeza con versiones anteriores del sistema operativo.
Retrofit
Este producto, también de Square, nos provee un cliente REST de código abierto para Android y Java. Nos permite un gran nivel de personalización, usando GSON y parseado JSON. Además, cabe mencionar que Retrofit usará OkHttp si está disponible en nuestra aplicación.
Picasso
Otro producto más de código abierto de Square. Éste nos provee de una librería para descarga de imágenes y usos de caché. Tiene muchas opciones de personalización, tales como el reescalado de imágenes. Es simple de utilizar, pero de gran utilidad, pues nos gestionará la descarga de imágenes cuando no estén ya cacheadas en memoria.
AndroidViews
Esta web es un sitio que nos permite tener recopiladas gran cantidad de información de utilidad para nosotros como programadores: herramientas, librerías y recursos. Desafortunadamente, no tiene funcionalidad de búsqueda y no es fácilmente comprensible.
Android Weekly
Esta es la lista de emails en la que primero deberíamos estar si queremos formar parte de alguna lista de distribución. Es un newsletter dedicado a la comunidad de desarrollo Android, incluyendo noticias sobre nuevas librerías, herramientas, blogs… Si no tienes email o no quieres recibir emails, siempre puedes comprobar el sitio cada lunes para ver las novedades.
Android Niceties
Se trata de una gran colección de experiencias bien diseñadas y desarrolladas dentro del ecosistema Android. Hay aplicaciones bien conocidas aquí como Duolingo o Etsy, entre otras.
Android Lifecycle
Este código nos permite comprender completamente sobre los ciclos de vida de las clases Activity y Fragment y como se relacionan con la interacción del usuario, tanto dentro como fuera de nuestra aplicación.
Android Asset Studio
Este sitio nos permite generar recursos de diferente índole para Android: iconos de notificaciones, de aplicaciones, de Navigation Drawer… Sin duda, es una herramienta de las que más utilizo.
Generador de colores para Android Holo
Esta herramienta nos facilita la creación de los recursos para disponer de un tema para nuestra aplicación. Es muy simple de utilizar, pero nos ayuda mucho cuando tenemos que lidiar con temas basados en Holo y otros anteriores que no soporten Holo.
DPI Calculator for Android
Tan simple como su nombre indica: una herramienta para poder calcular todas las densidades de píxeles por punto necesarias basándose en una previa que introduzcamos.
Canal de Youtube Android Developers
Sin duda, un canal al que estoy suscrito en YouTube. Es un canal donde todo está focalizado en Android, pensado desde el punto de vista del programador. Hablan de desarrollo, diseño, experiencia de usuario… Un must have.
Gradle, please
Si has cambiado recientemente a Gradle y necesitas ayuda con las dependencias, esta herramienta te ayudará de forma muy simple. Tan simple, pero tan útil…
Base de plataformas android/platform
¿Es el código base de Android información de utilizad? Pues sí. Son muchas las veces que personalmente he tenido que consultar algo específico para comprender el funcionamiento. Especialmente en aquellos casos donde la documentación JavaDoc no nos aclara nuestra duda.
Documentación oficial de Android
Tal como alguna otra vez he comentado, la documentación oficial de Android debe ser nuestra Biblia particular. Creo que sobran las palabras.
Training oficial de Android
Cuando tenemos dudas con la documentación oficial, lo mejor que podemos hacer es echar un vistazo a todos los ejemplos que podemos ver del training oficial de Android. Código hecho por los mismos que desarrollan la plataforma. ¡Qué decir!
Google I/O
Sin duda, la cantidad de vídeos que se generan sobre programación gracias al evento Google I/O es digna de mencionar. Aquí como ejemplo, tenéis la de 2010. Charlas de todo tipo, con trucos, recomendaciones, howtos…
Tutoriales no oficiales sobre Android
También podemos disponer de multitud de tutoriales sobre Android que no son los oficiales. Aun así son de gran utilidad. Aquí algún ejemplo, aunque la lista puede ser infinita:
- Tutoriales de programación en Android
- Curso sobre Android
- Tutoriales sobre desarrollo de aplicaciones para Android
- Curso MCOC sobre Android por la universidad de Maryland
- …
Documentación para principiantes
Aunque lo mejor es empezar por la documentación oficial, podemos contar con multitud de recursos, especialmente para principiantes o gente que se inicia por primera vez en la programación para Android. Estos son algunos ejemplos, aunque de nuevo la list apuede ser infinita:
- CodeProject
- HelloAndroid
- Empezando con Android
- Tutoriales para principiantes
- Tutorial para principantes desde cero
- Videotutoriales
- …
Libros sobre Android
Respecto a libros, también hay muchos aunque yo como referencia utilizo el siguiente:
Professional Android 4 Application Development, por Reto Meier
Sin duda es un libro a tener en cuenta como referencia para todo, pues está bien explicado y con buen código como ejemplo. Sin duda, merece la pena comprarlo.
Aparte de este libro, encontrar otros que nos introduzcan a Android es realmente fácil. Estos son algunos ejemplos:
Aprende Android en 20 Conceptos
¡Cómo pasar por esta sección sin mencionar la sección que desde El Androide Libre hemos publicado! Creo que es una sección bastante completa como introducción al mundo Android.
Concluyendo…
Esta lista es ínfima al lado de todo lo que podemos encontrar en Internet, pero desde luego puede servirnos de utilidad. Sí aparecen las más importantes, pero no quiere decir que estén todas las relevantes. Hemos tenido que seleccionar 20 para que la lista no sea externa, pero ¡no porque el 20 signifique nada especial!
Y vosotros, ¿la veis de utilidad? ¿Cuál es vuestro favorito?