Tipos de API según su función y tecnología
Existen diferentes Tipos de API en relación a sus funciones especificas y en relación a su tecnología.
Si se quieres aplicar una manera inteligente de gestionar la integración de apps empresariales, lo mejor es realizar hacer el análisis que desarrollan las organizaciones de TI más efectivas a la hora de gestionar los diferentes parámetros de seguridad, escalabilidad, complejidad y empleo de recursos que implica la integración de las API.
Además de realizar estas tareas, también es importante analizar en profundidad los puntos mas vulnerables del proyecto en cuestión.
En este sentido, es muy recomendable las mejores prácticas para la seguridad de las API y las mejores estrategias para la escalabilidad de las API.
Tipos de API
API de servicios web
A día de hoy muchos tipos de API están basados en estándares de servicios web residentes de hipertexto, como por ejemplo SOAP, XML-RPC, JSON-RPC y REST.
Las denominadas API de servicios web se emplean en aplicaciones web en la arquitectura orientada a servicios que suelen proporcionar las grandes organizaciones empresariales.
Los servicios web que se fundamentan en el Protocolo simple de acceso a objetos (SOAP) tienen su base en un protocolo WC3.
SOAP no es mas que un protocolo liviano para el intercambio de información en entornos descentralizados, con frecuencia se suele asociar SOAP con el lenguaje de descripción de servicios web UDDI y WSDL.
En relación a WSDL , hay que decir que se trata de un lenguaje de programación basado en XML, su función es la de describir servicios web.
WSDL también sirve para conocer qué es lo que debe esperar que haga el servicio web, este lenguaje es leído a través de una máquina y es legible por humanos, de la misma forma que sucede con SOAP y UDDI.
UDDI «Universal Description, Discovery and Integration» es un medio que proporcionar un directorio de servicios web disponibles.
Otro punto importante dentro de estos tipos de API de servicios web, son los servicios web RESTful, se trata de un grupo de enfoques que se ajustan a los principios de la arquitectura de transferencia de estado representacional (REST).
Los principios de REST necesitan de una arquitectura cliente / servidor basada en HTTP, se ajustan al uso de los indicadores de recursos universales (URI).
Los recursos están están desacoplados de su origen, son auto-descriptivos, las interacciones con estado se logran a través de hipervínculos, la transferencia de estado explícita se usa para lograr interacciones con estado.
API de código fuente
La función de estos tipos de API de código fuente es ofrecer bibliotecas de objetos, se suelen usar con frecuencia en proyectos de desarrollo destinados a la creación de una aplicación compuesta.
Las llamadas se ejecutan en consonancia con los estándares del entorno de la aplicación, como por ejemplo .NET. o J2EE.
API heredadas
Las API heredadas se suelen utilizar en interfaces de aplicaciones que usan protocolos de comunicación, API de hardware, protocolos de objetos remotos, archivos planos, interfaces de sistema operativo o colas de mensajes.
Un ejemplo típico de API heredado sería CORBA (COMMON Object Request Broker Architecture).
Estos tipos de objetos CORBA pueden ocurrir en muchos casos, por ello aunque el tipo de objeto del cliente no cambia, cada instancia del tipo de objeto del cliente se asocia por medio de un token a sus datos.
Tipos de API en el ciclo de desarrollo
API de Producción
Los tipos de API de Producción son un tipo de API en el ciclo de desarrollo, se explican con el hecho de que eventualmente, cada app va a necesitar una API de producción.
Este es el servidor encargado de enviar datos reales desde la base de datos, sus funciones son la lógica comercial, la imposición de servicios y la realización de actualizaciones.
Una API de producción no devuelve datos a los usuarios que no deberían verlo, tampoco permite a esos usuarios la actualización de la información que no están autorizados a cambiar.
Estas API de producción por fuerza han de ser rápidas, esto se debe a que son las responsables de manejar en el mundo real todo el tráfico de la aplicación.
La práctica totalidad de las aplicaciones cuenta con una API de producción.
API de desarrollo
Las API de desarrollo son un tipo de API a la que se le conoce popularmente como API falsa, estas API de desarrollo son las ideales para trabajar con el cliente, con anterioridad a que esté terminada la API de producción.
La existencia de este tipo de API, permite continuar con el progreso del front-end, aunque no existan bases de datos o datos reales.
Las API de desarrollo normalmente no persisten datos en una base de datos lo normal es que guardan todo en la memoria.
Photo by Charles Deluvio ???? on Unsplash