Las cookies nos permiten ofrecer nuestros servicios. Al utilizar nuestros servicios, aceptas el uso que hacemos de las cookies. Más Información. Aceptar

Por qué usar API REST en 2018

Samuel Solís
Por qué usar API REST en 2018
El reproductor de video será cargado en breves instantes.

En el artículo vamos a ver qué son las APIs y por qué resultan tan importantes en la actualidad, por qué se usan cada vez más y por qué es casi imprescindible tener una en tu proyecto.

Definición de API

La necesidad de tener una API ha ido creciendo y cambiando a lo largo de los años, debido precisamente a esa evolución de tecnología.

Una API es por definición una interfaz de programación de aplicaciones, es decir, una forma de acceder a una aplicación, que tiene un conjunto de subrutinas, funciones y procedimientos.

En general, una API puede ser cualquier cosa, pero cuando nos referimos a una API en un sistema complejo, es una manera de interactuar con ese sistema y con una especificación concreta, es decir, con una serie de reglas que definen cómo se interactúa con ese sistema y cómo se utiliza.

En un sistema como como Drupal, por ejemplo, Drupal tiene una API para usar su propio código, y además de esto, tu sistema o tu aplicación puede tener una API que exponga contenido, subrutinas, funciones o cualquier otra cosa, para que otros elementos externos interactúen con tu sistema.

Necesidad de tener APIs en la actualidad

En la actualidad, tenemos muchos y variados sistemas, algo que no ocurría antes.

Antes se creaba una página web, los usuarios entraban en la misma, se registraban, hacían las acciones que tuviesen que hacer, y a partir de ahí, funcionaba el sistema. Éste no se comunicaba con nadie más, si se necesitaba obtener alguna información de esa web, se creaban los métodos necesarios para para obtenerlos.

Lo que antes era una pequeña web en la que el usuario entraba únicamente a través de una URL, hoy en día, con que el sistema sea un poco profesional y tenga un uso más allá de un blog personal o similar, esa web va a tener una fuerte interconexión con sistemas externos.

Puede existir una aplicación móvil que utilice los datos de esa web. Tal vez queramos que esa web tenga unos datos y una aplicación para un smartwatch, una televisión inteligente, una lavadora, un frigorífico… ya que a día de hoy cualquier cosa que pueda estar conectada a internet es susceptible de poder mostrar datos, y esos datos tienen que salir de algunos sitios, y esos sitios tienen que exponerlos vía API.

Además, dentro de los propios sistemas web ya existen sistemas complejos en los que interaccionan entre sí. Ni siquiera hace falta que tengamos una aplicación móvil, podemos tener una web o una aplicación, por ejemplo, en la que haya un solo login para diferentes sitios, para que el usuario no tenga que crear cuentas de usuario en diferentes sistemas a la vez.

Incluso podemos tener un sistema headless, desacoplado completamente, en el que backend y el frontend no tengan nada que ver, y se comuniquen única y exclusivamente a través de la API. Incluso podamos tener dos frontends diferentes tirando sobre la misma base de datos usando esa API.

También es posible que tengamos que exponer los datos para exponerlos a elementos como BigQuery de Google, que sirve para hacer querys complejas de datos históricos, para a partir de ellos crear una lógica de negocio inteligente.

Existen muchísimas formas y momentos en los que los datos tienen que viajar entre sistemas. Para ese viaje entre sistemas se crearon los APIS, y ahora mismo es imprescindible tenerlas.

Movimiento API-first

Lo anterior es tan importante que hace unos años surgió un movimiento llamado API-first, cuyo objetivo es tener pensar que cuando se diseña un sistema, ya nunca se diseña para ser mostrado en un sitio como ocurría antes.

Los nuevos sistemas deben estar pensados para que los datos sean expuestos en una API. Después usando esa API, esos datos se pintarán en un HTML en una página web, serán usados por una aplicación móvil, los usará un front completamente desacoplado o lo usará quién sea necesario.

En definitiva, hay que estructurar los datos pensando en que serán consumidos desde diferentes sitios, y no tanto una estructuración de datos más old school, pensada en, por ejemplo, simplemente pintarlos en una web o una aplicación móvil.

Relacionado

Te dejamos una selección de cursos, carreras y artículos

Coding standard en Drupal 8

CMS

05 de Noviembre de 2018

Aprender por qué es tan importante el coding standard para el desarrollo de nuestros proyectos, y en concreto el de Drupal 8.

Estas son algunas de las empresas que ya confían en OpenWebinars

Profesores y profesionales

Nuestros docentes son profesionales que trabajan día a día en la materia que imparten

Conviértete en profesor de OpenWebinars