Curso Android | #1. Un poco de historia y teoría

Podés consultar el curso completo desde este link que te dejo acá. Podés seguirme por LinkedIn o Twitter si querés estar al tanto de las próximas publicaciones de cada capítulo.

Antes de Empezar

Hace un tiempo escribí un artículo sobre desarrollo con Android y Java. Este curso si bien es más actualizado, no reemplaza el anterior. Te invito a leerlo aquí.

Prólogo basado en sufrir bastante.

Recuerdo mis inicios como desarrollador mobile, allá por el año 2012 programando con Java. Eran las épocas en que Eclipse era el IDE que debías usar conjunto de su ADT (Android Development Tools) que le daba todas las herramientas necesarias para funcionar con Android.

Era un desastre.

Instalabas Eclipse, arrancabas un proyecto y ya tenías 2 mensajes de error con una especie de código largo que buscabas en Google y podían ser mil cosas distintas.

Todavía no existían los lineamientos de Material Design, teníamos un theme llamado Holo que daba más pena que el diseño de Winamp.

Si bien ADT venía con todo integrado, se rompían las referencias a carpetas y el “Clean” y “Rebuild Project” era el pan de cada día.

La llegada del salvador: Android Studio

Aunque se rompía bastante, Eclipse me permitió dar mis primeros pasos como desarrollador, e incluso llegué a publicar un par de aplicaciones en Google Play.

Luego llegó Android Studio, propiedad de la empresa Jetbrains; gente que sabe crear editores de desarrollo. Tenían un IDE llamado Intellij, que competía directamente con Eclipse. Y Android Studio venía a ser el que reemplazaría al famoso ADT.

Pero no nos vamos a engañar: funcionaba peor.

Las primeras versiones apenas compilaban. Teníamos Gradle Maven, mejor integración de dependencias y una organización más cómoda basada en módulos.

ADT y Android Studio siguieron mejorando versión tras versión. Pero éste último terminó siendo el ganador. Hoy día me llaman reclutadores, y me cuentan que el requisito mínimo en sus propuestas es conocer a fondo este IDE.

La gente de JetBrains lo hizo de nuevo: Kotlin

La industria apostó fuerte al desarrollo con Java y Android Studio. Y a medida que pasaban los años, su empresa fundadora iba agregando nuevos features: Mejoras en el Logcat, un monitor de uso en memoria y disco, herramientas de layout, integración con testing y muchas otras cosas más.

Pero hace unos años, decidieron crear su propio lenguaje para trabajar con plugins del mismo IDE. Y así nació Kotlin. Un lenguaje que una vez compilado, se convertía a código Java y luego a Bytecode. Parecido a como funciona Typescript con Javascript.

Cuando la gente de Google vio el potencial de este lenguaje, empezó a invertir en su desarrollo.

Kotlin resolvía cosas que con Java eran tediosas o difíciles. Y a medida que pasaron los años, se fueron agregando más componentes al lenguaje que marcaron un diferencial en tiempos y optimización de desarrollo.

Lo más interesante es que Java no fue reemplazado: Hoy los dos lenguajes pueden coexistir en nuestros proyectos de Android.

Las librerías que funcionan en Java, pueden correr en Kotlin.

Hoy día el mercado pide conocimientos en Java y Kotlin, pero en realidad es cuestión de unos años más para que este último sea el lenguaje principal para trabajar con Android.

No obstante, si por casualidad te enamoraste a Java y no querés dejarlo, podés trabajar en soluciones de backend como Spring Framework.

Por cierto, también se puede programar Kotlin en Spring.

Entonces, partiendo de la base de que Kotlin es nuestro objetivo, vamos a usarlo en todo el curso para aprender Android.

Estructura del (no) Curso

Si llegaste hasta acá, tengo que confesarte que te he engañado. Esto no es exactamente un curso, sino un conjunto de conocimientos curados que voy a volcar para enseñarte todo lo que sé y voy aprendiendo a lo largo de mi carrera como desarrollador Android.

Tengo una estructura mental de cómo voy a ir explicando los temas, pero puede que vuelva sobre muchas cosas para profundizarlas, dado que no considere que en ese momento sean necesarias.

Esto no es un curso, sino una exploración intensiva de tópicos que nos van a convertir no solo en desarrolladores, sino buenos programadores.

Vamos a empezar entendiendo las bases de Kotlin usando el IDE Intellij. Luego continuaremos con Android trabajando en los fundamentos y explicando el por qué de cada componente y su comportamiento.

Este “no-curso” no tiene fin. Siempre voy a estar publicando un tema nuevo que haya descubierto o reforzado. Pueden tomarlo como una tesis universitaria de una carrera llamada: Aprendiendo a Respirar en Android.

Conclusiones Finales

Puede que te preguntes: Si esto no es un curso, ¿cómo debería abordar los temas, o estudiarlos?

La respuesta esta ligada a la forma en que voy a brindarte el contenido:

  • Vas a tener a disposición toda la bibliografía que utilice.
  • Voy a recomendarte otros artículos o vídeos, no son opcionales, es importante que los mires.
  • Vas a tener mis repositorios de GitHub con todo el código que voy a mostrar y aplicar.
  • Te voy a ayudar con ciertas dudas, pero prefiero que uses mucho más StackOverflow, dado que posee mucho más conocimiento que mi precaria base de datos mental.
  • Vas a tener prácticas, pero no evaluaciones. Vos mismo/a tenés que sentarte y evaluar tus habilidades basándote en lo que aprendiste.
  • Aplica todo lo que aprendas constantemente. Más allá de que leas o consumas videos, el conocimiento no se asienta hasta que tu mente llegue a sus propias conclusiones jugando con el código.
  • Si te recomiendo un libro, puedes leerlo paralelamente con los demás artículos, pero procura terminarlo.

En fin, el camino es largo así que debes disfrutarlo. ¡Te espero en las siguientes clases!. Perdón, quise decir no-clases 😄.

¡Deja un comentario!

Artículos relacionados

Curso Android | #4. Emuladores

En este capítulo, vamos a configurar un emulador y ver alternativas al emulador de Android Studio. Podés acceder al curso completo desde este link. También

Curso Android | #3. Crear un proyecto

En este capítulo vamos a crear nuestro primer proyecto desde 0, viendo todas las posibilidades que nos ofrece Android Studio Podés acceder al curso completo