¿Por qué todos los servicios en línea deberían de tener un API REST?

Artículo originalmente creado por mi para el blog de Better Code

La manera más sencilla de definir un API REST es una colección de Arrays de JavaScript que pueden ser vistos, creados, modificados y eliminados y por supuesto mediante AJAX pueden ser plasmados en las vistas de tu aplicación.

Si tenéis un perfil técnico: Una API REST es una aplicación definida en cualquier lenguaje de programación(Por favor, que el lector la haga en JavaScript, por favor) que mediante los protocolos de HTTP(GET, POST, PUT, DELETE) puede ser accedida y puede ser solicitada por AJAX siempre que tenga habilitada CORS.

En este breve artículo les vengo a comentar un poco de las ventajas que tiene un API REST frente a otro modelo de BackEnd y porque deberían usarlo en todas sus aplicaciones robustas.

3 ventajas principales de un API REST

  • Tenemos toda nuestra información centralizada ya que podemos crear distintos módulos y tener en nuestra API toda la información que necesitamos. Sí, toda.

  • No tenemos que aprender lenguaje de bases de datos para guardar la información. Podemos usar clientes de API como PostMan o JQuery si estamos en JavaScript para hacerlo mediante AJAX.

  • La API se comunica con la base de datos por lo que los datos realmente están ahí. Como siempre, nada cambió amante de las bases de datos C:

Ehh... Pero esto es para hacer webs... ¿Y si hago apps móviles?

Los lenguajes que uses para hacer apps móviles permiten hacer requests a otros servidores externos(tu API). Si no lo entendiste, en resumen, tu API es compatible con apps móviles! :D

Desventajas de usar un API REST en tu aplicación

En mi opinión es el método de creación de aplicaciones del futuro y no tiene ninguna desventaja aunque si se te puede hacer tedioso estar pidiendo todo por AJAX pero ES6 contiene algunos features para hacer eso más fácil así que es el momento de hacer tu propia API REST

¿Y si no se programar o aún no llegué a ese nivel?

Yo pasé por el proceso de crear una recientemente y aún estoy con ella y en un punto pensé en usar algo que la hiciera por mi, no hay muchas aunque la mejor opción entre ellas es Apiary aunque después de probarla definitivamente me quedo por hacerla tu mismo ya que la haces tu, la controlas tu, aprendes algo nuevo y te satisface hacer un API funcional así que eso no tiene precio C:

Espero que les haya gustado este pequeño artículo, si tienen alguna pregunta pueden dejarla en #BCBlog en Twitter mencionando a @BetterCodeHQ

Escrito por...

Miguh Ruiz

Geek & Full Stack JavaScript Developer.