En los últimos artículos estoy haciendo mucho hincapié en la necesidad de utilizar librerías en tu proyectos, y me he planteado que, quizá, no sabes aún (o no sabes muy bien) qué es una librería en Android. Pues bien, con esta publicación comienzo una serie de artículos en los que aprenderás qué es una librería (en general en programación y en concreto para Java/Android), dónde encontrarlas y cómo utilizar las librerías en Android más extendidas.
More...
Programar es construir un edificio
Imagínate que quieres construir un edificio. Así, tú solo. Tienes tu casco, tu ropa de trabajo, y tu caja de herramientas. Y un buen terreno sobre el que construir. ¡Manos a la obra!
Esto no lo construyes con un martillo y un destornillador
Tras planear sobre el papel la estructura, así como la instalación eléctrica, de agua y gas, te das cuenta de que, antes de empezar, necesitas retirar una cantidad considerable de tierra. Rebuscas en tu caja de herramientas, y sacas una pala.
Y te pones a cavar.
Cuando llega la noche, te das cuenta de que has retirado una parte ínfima de la tierra y que, además, has encontrado una roca bastante grande que tendrás que romper en pedazos antes de poder quitarla de enmedio. Un día entero, o dos, de picar piedra. ¿Te imaginas?
Entonces, quizá se te ocurriese crear una herramienta que te permitiera retirar la tierra con más rapidez. No obstante, eso te supondría hacer un paréntesis en la construcción de tu edificio. Durante una temporada, estarías proyectando y construyendo una máquina retroexcavadora.
¿Tú le ves sentido? ¿Has visto algún profesional de la construcción que se comporte así?
Lo más lógico es que alquilaras, y no construyeras tú mismo, esa retroexcavadora. Así, podrías retirar la tierra con más rapidez y seguirías centrado en la construcción de tu edificio. Le darías uso a tu caja de herramientas pero, para muchas otras cosas, optarías por herramientas más avanzadas, que te facilitarían el trabajo. Herramientas que ya existen, y que no es necesario que tú reinventes.
Pues bien: en programación, a esas herramientas se les llama librerías.
El lenguaje es tu caja de herramientas
Aunque he empezado el artículo preguntando qué es una librería en Android, lo cierto es que se pueden encontrar librerías en todos los lenguajes de programación.
En este ejemplo que utilizo, la caja de herramientas es el lenguaje de programación; en este caso, Java. if, switch, for, constructores, métodos, clases, interfaces... todas esas piezas son los componentes básicos de tu caja de herramientas. ¿Qué puedes construir con todo ello? Muchas cosas. Pero cuando te enfrentas a un proyecto complejo, que requiere resolver problemas de lógica sobre el papel antes de introducir código, vale la pena preguntarse si ya existe la herramienta que resuelve dichos problemas.
¿Te acuerdas de la máquina retroexcavadora de la que te he hablado? ¿Para qué la vas a construir tú mismo, cuando alguien ya lo hizo antes y tú puedes simplemente tomarla y utilizarla?
Una librería en Android es una herramienta poderosa
Existe una infinidad de librerías en Android, que te pueden ayudar en muchas ocasiones. Con ellas, puedes:
(Las acciones REST te permiten crear (PUT), leer (GET), actualizar (POST) y borrar (DELETE) elementos, mediante una conexión a internet (en una lista de correo de MailChimp, por ejemplo), desde tu propia aplicación.)
Estos son solo tres ejemplos, pero hay librerías para todos los gustos. En el próximo artículo te voy a explicar cómo encontrar la librería en Android que necesitas, con rapidez.