¿Qué es una API en programación y para qué sirve?

Logo de Cuarzo.dev
Cuarzo.dev

Recibe cada lunes y jueves un correo para ayudarte a impulsar tus habilidades de programación. Ofreciéndote consejos, tutoriales, recursos gratuitos, noticias relevantes y una comunidad comprometida. También tenemos memes 😏

Suscríbete Gratis

Si tienes alguna duda con el curso o te quedas en algún punto donde no sepas avanzar te puedes unir gratis a nuestra comunidad de discord y preguntar tus dudas, que la comunidad estará encantada de ayudarte.

Únete al discord

Imagina que quieres desarrollar una aplicación, por ejemplo de fotos geolocalizadas que puedas compartir en facebook.

Para ello necesitarás un sistema de mapas para poder ver las fotos, te imaginas si tuvieras que hacer desde cero ese sistema de mapas.

sería totalmente impensable

necesitarías miles de millones de dólares para poder montar un sistema así.

Es más fácil usar un sistema que ya existe, como lo es Google Maps, entonces necesitas que tu aplicación se conecte a Google Maps, necesitas usar la API de Google Maps.

Y para la otra parte de la app, que comparta fotos en Facebook automáticamente, esto ni siquiera podrías desarrollarlo tú, como en el caso de los mapas, que aunque sea una locura, podrías, pero esto no, porque ya implica conectarse a una aplicación externa, como lo es Facebook, por lo que necesitas de alguna manera conectarte a los servicios de Facebook, nuevamente a través de su API.

Vamos a ver que es una API.

API es la abreviatura de Application Programming Interfaces (interfaz de programación de aplicaciones)

Y esto no es más que una serie de definiciones y protocolos que se utilizan para comunicar dos aplicaciones de software.

Si nunca has oído hablar de las API o lo has oído mencionar pero se te queda en con concepto abstracto, es normal, porque estas no son ninguna parte visible de lo que sería la superficie de una aplicación o una web.

La API corresponde a una parte interna que hace posible el funcionamiento de lo que se ve de esa aplicación. Es decir, de cara al usuario final del producto, de la API solo puede ver los resultados que produce, por ejemplo, cuando haces login con tu cuenta de Facebook en una juego móvil, tu lo único que ves es que has hecho login con Facebook, pero por detrás de eso hay una comunicación de API.

Las API pueden tener tantas funciones como se quiera. Y pueden ser API privadas, las cuales sólo se usan para una aplicación, o aplicaciones de una empresa, y nadie más tiene acceso a esa API.

También podemos tener API semi-abiertas, las cuales tiene acceso la empresa y otros partners con los que puedan tener algún tipo de negocio.

Y por último tenemos las API abiertas, o públicas, a las cuales cualquier desarrollador puede acceder y utilizarlas para sus aplicaciones.

Pero cuidado con estas API que son totalmente abiertas y gratuitas, porque te puede pasar lo que me pasó a mi, que explico en este vídeo de aquí

Una de las funciones de las API es permitir que otros puedan realizar acciones en tu sistema, sin tener que darle acceso a todo tu código, de esta manera tienen una herramienta sin necesidad del código.

Las API también pueden ser API locales, no penséis sólo en API como en servicios webs, también tenemos API por ejemplo en los dispositivos móviles, para acceder a las funciones de este, eso es una API local. Por ejemplo con cada nueva versión del sistema operativo que sacan Android o IOS, sacan nuevas versiones de sus API.

Vale, pero exactamente, ¿para qué sirve una API?

Pues una de las principales funciones es simplemente ahorrar tiempo, ahorrar tiempo y dinero. Sobre todo gracias a las API públicas que nos permiten a los desarrolladores integrar nuestras aplicaciones con funcionalidades que de otro modo nos costaría muchísimo tiempo y dinero desarrollarlas desde cero.

Si tienes que hacer que se pueda pagar desde tu aplicación, ya tienes API como la stripe o paypal que puedes integrar y no tienes que desarrollar nada de temas de pagos

Lo cual sería una auténtica locura

O como hemos dicho implementar funcionalidades a nuestras aplicaciones integradas con otras aplicaciones, por ejemplo aquí los ejemplos más claros y más comunes es integrar tu aplicación con las redes sociales, con las API de las redes sociales, a lo mejor para poder compartir contenido directamente desde tu aplicación en una red social como lo es Instagram.

Por cierto, sígueme en Instagram, que por allí hacemos otro tipo de actividades, allí podéis hablar conmigo, respondo a preguntas a través de las historias, y no te aburrirás para nada con mis memes de programación, te espero allí

Por ejemplo, en el caso explicado antes de integrar una API de pago, así de forma simple cómo funcionaría, tú tendrías tu web, vamos a decir que tienes tu tienda online donde vendes algo, pues cuando el usuario va a comprar y llega el momento de pagar, el usuario pone su tarjeta, y tu web lo que hace es comunicarse con la API del sistema de pago que hayas elegido, y este verifica que la tarjeta es correcta, que tiene dinero, que no está caducada, en fin, una serie de cosas que tu web no hace falta que compruebe, tu web lo único que tiene que hacer es esperar un momento a que la API le conteste y le diga que sí que es un tarjeta válida y que puede hacer el pedido, o por el contrario si ha habido algún problema también se lo comunica para que tu puedas informar al usuario.

El mundo de las API es interminable, hoy en día tenemos API para todo y de todo tipo, incluso API para desarrollar nuestras aplicaciones más rápidamente y cómodo, como muchas de las que proporcionan servicios en la nube como los de Amazon o Google.

Para nosotros los desarrolladores las API son fundamentales, es muy raro un desarrollo donde no se use alguna API externa a tu propio desarrollo. Así que si estás empezando en la programación más vale que te familiarices con las API lo antes posible.

Al suscribirte estás aceptando los términos de uso y la política de privacidad. Puedes darte de baja en cualquier momento.

Libro No todo es programar de Kiko Palomares
Koding Beats