La economía de las interfases API

¿Qué sistema de gestión necesita su empresa?

Las interfases de programa de aplicación (API) son códigos que permiten que dos programas de software se comuniquen entre sí. Las interfases API definen la forma correcta para que un desarrollador escriba un programa que solicite servicios de un sistema operativo (SO) u otra aplicación. Las API se implementan mediante llamadas a funciones compuestas de verbos y sustantivos. La sintaxis requerida se describe en la documentación de la aplicación a la que se llama.

La economía de las interfases API es la exposición de los servicios y activos digitales de una organización a través de interfaces de programación de aplicaciones (API) de forma controlada. En este contexto, la palabra “economía” se refiere a la administración cuidadosa de los recursos disponibles y el término economía de interfases API se puede usar como sinónimo de administración de API.

Las API aseguran que los datos extraídos de una aplicación de software se formatean y pasan a la siguiente aplicación sin cambios, incluso si los conjuntos de características de la aplicación asociada se han actualizado. Si bien las herramientas de las interfases API siempre han desempeñado un papel importante en el desarrollo de software, la demanda actual de integración de datos ha animado a los proveedores de todos los tamaños a que se conviertan en “modulares” y dividan las partes complejas del software en componentes más pequeños y en contenedores llamados microservicios.

Al exponer las interfases que permiten que los microservicios se comuniquen entre sí, los proveedores pueden satisfacer las necesidades de grupos específicos de clientes sin tener que recurrir remodelar el software. También le da a los clientes más control sobre las aplicaciones de los proveedores.

Los expertos predicen que a medida que los desarrolladores de software vean las ventajas económicas de la integración, muchos de los grandes sistemas de software monolíticos que actualmente son On premise se descompondrán en conjuntos de microservicios altamente organizados disponibles en la nube.

El objetivo final de la economía de las interfases API es facilitar la creación de aplicaciones enfocadas en el usuario que apoyan los objetivos de la línea de negocios y mejorar el rendimiento de la fuerza laboral. A medida que los gerentes buscan formas creativas de monetizar servicios y activos a través de las interfases API, se espera que los proveedores necesiten simplificar la administración de las interfases API para satisfacer las necesidades del desarrollador no técnico en entornos de desarrollo de software de código bajo.

Cómo funcionan las interfases API

Las interfases API se componen de dos elementos relacionados. El primero es una especificación que describe cómo se intercambia la información entre programas, en forma de una solicitud de procesamiento y una devolución de los datos necesarios. El segundo es una interfaz de software escrita según esa especificación y publicada de alguna manera para su uso.
Se dice que el software que quiere acceder a las características y capacidades de la interfaz API lo llama, y el software que crea la API se dice que lo publica.

Tres tipos básicos de APIs

Las interfases API toman tres formas básicas: local, similar a la web y similar a un programa.

Las API locales son la forma original, de donde proviene el nombre. Ofrecen servicios de SO o middleware a los programas de aplicación. Las API de .NET de Microsoft, la TAPI (API de telefonía) para aplicaciones de voz y las API de acceso a la base de datos son ejemplos del formulario de API local.

Las API web están diseñadas para representar recursos ampliamente utilizados, como páginas HTML, y se accede a ellas mediante un protocolo HTTP simple. Cualquier URL web activa es una API web. Las API web a menudo se denominan REST (REpresentational State Transfer) o RESTful porque el editor de las interfaces REST no guarda ningún dato internamente entre las solicitudes. Como tal, las solicitudes de muchos usuarios se pueden mezclar como lo estarían en Internet.

Las API del programa se basan en la tecnología de llamada a procedimiento remoto (RPC) que hace que un componente del programa remoto parezca ser local al resto del software. Las API de arquitectura orientada a servicios (SOA), como las API de la serie WS de Microsoft, son API de programa.

REST y la web

Aunque las aplicaciones que llaman a las interfases API tradicionalmente han sido escritas en lenguajes de programación, la nube e internet están cambiando eso. Las API web se pueden llamar a través de cualquier lenguaje de programación, pero también se puede acceder a ellas desde páginas creadas en HTML o herramientas de generación de aplicaciones.

El mayor papel que desempeña la web en nuestras vidas y actividades comerciales ha dado lugar a una explosión en el modelo REST y al uso de herramientas de programación simples, o incluso a ninguna programación, para el acceso a la API.

Ejemplos de interfases API en la comunidad de desarrolladores

Los sistemas operativos y las herramientas de middleware exponen sus características a través de colecciones de API generalmente llamadas “kits de herramientas”, y dos conjuntos diferentes de herramientas que soportan las mismas especificaciones de la interfaz API son intercambiables para los programadores, que es la base de las afirmaciones de compatibilidad e interoperabilidad.

Actualmente, Internet es el principal controlador para las API, y compañías como Facebook, Google y Yahoo publican API para alentar a los desarrolladores a explotar sus capacidades. Estas API nos han dado todo, desde nuevas funciones de Internet que navegan por los sitios de otros servicios, hasta aplicaciones para dispositivos móviles que ofrecen un fácil acceso a los recursos web.

Las nuevas características, como la entrega de contenido, la realidad aumentada y las aplicaciones novedosas de la tecnología portátil, se crean en gran parte a través de estas interfases API.

tipos de APIs
Figura 1 – Tipos de interfases API

¿Por qué importa el diseño de las interfases API?

Tradicionalmente, las aplicaciones que publican las API tienen que estar escritas en un lenguaje de programación, pero como las interfases API están cada vez más generalizadas, la validación adicional de la estructura de una API es importante.

El buen diseño de la API es fundamental para el uso exitoso de la misma, y los arquitectos de software pasan un tiempo considerable revisando todas las aplicaciones posibles de una interfaz API y la forma más lógica de usarla.

Las estructuras de datos y los valores de los parámetros son de particular importancia porque deben coincidir entre el llamador de una interfaz API y su editor.

Fuentes: Techtarget, Gartner Group, BBVA.

Traducido y adaptado por la división consultoría de EvaluandoCloud.com

¿Qué sistema de gestión necesita su empresa?