Hablemos de API’s (Parte 1)

Standard

Hola que tal, espero se encuentren muy bien! Hace algún tiempo que no escribía en el blog, espero que este tema sea de su interés y que lo disfruten.

En esta ocasión, abordaremos un tema de moda desde hace algún tiempo, en el cual he tenido la oportunidad de involucrarme desde hace algunos proyectos: Las API’s

Las API (Application Programming Interface, por sus siglas en ingles), son interfaces que nos permiten interactuar con un sistema de una manera mas practica y escalable, sin necesariamente saber que sucede detrás. Desde métodos para realizar acciones de un CRUD, hasta solo mandar una cantidad mínima de datos y que la API nos resuelva todo un proceso que seria extremadamente complejo o tardaríamos una eternidad en completar por nuestra cuenta. Nos permiten encapsular y separar los componentes de un sistema para poder compartirlos con otros usuarios (personas o sistemas). Si lo ponemos en términos mas simples, una API son una serie de acuerdos y requisitos de como una aplicación se comunicara con otra.

Si usamos ejemplos que les parece si consideramos PayPal. Cada vez que accedemos a un sitio donde podemos realizar compras que soporte pagos por PayPal, no significa que los programadores de PayPal fueron con los creadores del sitio y se pusieron a implementar su soporte para el sitio en cuestion. Este soporte fue implementado a través de el API desarrollada por PayPal, la cual nos permitiría procesar un pago del usuario con su cuenta de PayPal y facilitarle al usuario su compra, y a nosotros el manejo de los fondos. Ahora imaginen que como compradores tenemos ligada nuestra tarjeta de credito a nuestra cuenta de PayPal: la empresa no tiene una manada de monos entrenados para ir a tu banco en especifico con tus datos y procesar los fondos… o si la tiene derp thinking

Claro esta que no! Seria costoso y complicado (fuera de entrenar a la manada de monos xD). Estos procesos también los hacen por medio de API’s que son expuestas por los bancos para hacer este tipo de operaciones de una manera segura y cumpliendo con los estándares de las organizaciones que las regulan.

Para abarcar este tema me gustaría desarrollar un mini proyecto con junto con ustedes, donde desarrollaremos un API donde expondremos todos los servicios que podrán ser consumidos por nuestra aplicación y también desarrollaremos un mini frontend, también implementaremos un poco de seguridad en nuestra API para que podamos autenticarnos y así tener permitido realizar operaciones en ella.

Dentro de las tecnologías que estaremos utilizando son: Ruby on Rails en su version 5 (aprovechando que ya fue liberada), para la programación del WebApi JSON y como frontend utilizaremos una aplicación que desarrollaremos con AngularJs+HTML/CSS.

Espero que con esta serie de de entregas, nos quedemos con un mejor entendimiento de lo que las API’s nos ofrecen y así las consideremos para las realizaciones de nuestras futuras aplicaciones.

Hasta la Próxima!

Leave a Reply

Your email address will not be published. Required fields are marked *