El término API software significa Interfaz de Programación de Aplicaciones y significa Interfaz de Programación de Aplicaciones en español. Se utilizan procedimientos y procedimientos definidos para crear e integrar la aplicación de software, lo que permite la comunicación entre las dos aplicaciones de software durante todo el proceso.
Por lo tanto, podemos hablar de API basadas en instrucciones específicas que diseñan módulos de software para comunicarse o interactuar con otros módulos en una o más funciones. Todo depende de la aplicación que esté utilizando y del permiso que el propietario de la API le otorgue a otro desarrollador.
Para el usuario promedio, todo lo que puede ver en la API es cómo abrir un evento, un juego móvil, cómo iniciar sesión y conectarse a una cuenta de Facebook o cómo se anuncian los resultados del juego en Twitter. O cuando la app envía una alerta a tu teléfono móvil u ordenador.
Como mencionamos antes, las API pueden tener funciones únicas y funciones múltiples, y pueden ser herramientas muy poderosas. Cuando esto sucede, la aplicación puede enviar una aplicación con un patrón especial, que determina cómo el programa o software envía la respuesta a la solicitud.
Puede ser personal para uso empresarial, abierto solo a socios o abierto a cualquier desarrollador para interactuar o crear sus propias API. También puede ser una API local para aplicaciones que se comunican en el entorno o en un dispositivo, o una API remota cuando se quiere acceder a diferentes contenidos.
También permite que otros usuarios utilicen parte de la aplicación o servicio sin renunciar a todos los números del servicio sin abrir. Estos desarrolladores externos pueden usar estas funciones sin tener que saber cómo el proceso las hace funcionar internamente.
¿Para qué sirven las API’S?
Una de las principales características de la API software es que facilita el trabajo del desarrollador y ahorra tiempo y dinero. Por ejemplo, si estás creando una aplicación que es una tienda en línea, no necesita crear un pago u otro sistema desde cero para comprobar si el producto está en stock. Puede usar la API de un servicio de pago existente como PayPal y solicitar una API para decirle al remitente qué hay en stock.
También es útil si desea usar deliberadamente las características de un servicio en particular para beneficiar a los usuarios o persuadir a los usuarios de ese servicio para que usen su aplicación.
Otro ejemplo clásico es el de una aplicación de terceros vinculada a un servicio. Por ejemplo, las redes sociales como Twitter o Reddit te permiten crear y enlazar con aplicaciones no gubernamentales. Esta aplicación requiere la API de la red social para presentar la información y los procesos internos que la hacen funcionar.
En estos casos, las API pueden restringir la funcionalidad disponible para aplicaciones de terceros para servicios o relaciones. Por ejemplo, se ha informado repetidamente que Twitter interfiere con los desarrolladores al restringir qué usuarios pueden usar su API.
A veces, otros servicios crean deliberadamente API que terceros pueden usar para ciertas tareas y, por lo tanto, desarrollan nuevas funciones para ampliar sus aplicaciones y preferencias. Podemos tomar algunos ejemplos de API como, Google, que desarrolló Docs para Google Docs para habilitar la creación automática de listas de correo o la venta de otros servicios.
Beneficios de las API’S
Las API tienen muchas ventajas, ya que le permiten aprovechar las capacidades de otro software o aprovechar la infraestructura de otra plataforma.
Para que pueda reutilizar números que han demostrado su eficacia a la perfección. Libertad lingüística y tecnológica Puede personalizar su tiempo o perfeccionar sus habilidades en cualquier idioma o tecnología que se adapte a las necesidades o ideas de su proyecto.
No importa si la tecnología utilizada por la API cambia en el futuro. Para ello, solo tienes que respetar las funciones de la API y hacer lo necesario. experiencia de usuario Aunque depende de cómo el usuario haga su trabajo, en teoría, se puede decir que el desarrollo de sitios web basados en API funciona mejor que un sitio web existente.
Desde el momento en que lo solicita al servidor, obtiene un archivo plano que tarda menos tiempo en enviarse si lo combina con HTML/CSS y lo obtiene. En esta aplicación web, no es necesario cargar la página y no es una aplicación especial, pero es muy importante.
Separación servidor/cliente
Cómo son independientes, se comunican a través del intercambio JSON. El cliente ignora lo que ha creado la API software y el servidor ignora lo que haces con los datos que proporcionas. La refactorización o la evolución se pueden realizar tanto en el anverso como en el reverso.
Escalabilidad, fiabilidad y flexibilidad
Si la conexión entre el cliente y el servidor es buena, entonces todo está bien. Puede cambiar el servidor o la base de datos y no fallará si devuelve los datos que necesita. Debido a que utiliza la API, puede escalar según sea necesario.
Puede cumplir con el requisito y crear múltiples interfaces web o aplicaciones para cualquier dispositivo. Dado que puede enviar páginas hacia adelante a través del servidor y la API está alojada en un servidor independiente, tiene una forma más fácil de ejecutar su aplicación.
Requiere capacidad mínima.
No requiere memoria, puede manejar múltiples solicitudes y no requiere escritura HTML, lo que reduce el costo del rendimiento del servidor.
Guia para el desarrollo de API’S
Platzi tiene una nota genial realizada por uno de sus usuarios donde explica un poco sobre el desarrollo de API software, por esa razón, vamos dejarte una pequeña guía de cómo hacerlo.
Cuando escribes números, estás acostumbrado a registrarlos con instrucciones que describen su función. Por ejemplo, una función que devuelve un elemento que contiene todos los usuarios se llama get_users o getUsers.
Es bueno en código. Sin embargo, esto también sucede con las URL y no es una buena práctica. Suponga que crea una API de con una URL que devuelve JSON con todas las clases disponibles. Así que lo primero que viene a la mente es crear una URL como esta:
Asimismo, si necesita varias URL para crear, modificar, eliminar clases u obtener información sobre una clase en particular; La URL es:
A medida que pasa el tiempo y crea más y más URL, comenzará a volverse aburrido y difícil de recordar. Una mejor solución sería mantener 2 URL base por recurso. Esto hará que su URL se vea así:
El enfoque aquí está en los títulos que describen cada recurso sin el uso de palabras descriptivas. Ahora puede usar verbos HTTP como campos en mayúsculas. CRUD (Crear – Leer – Editar – Eliminar) puede mostrar los verbos POST, GET, PATCH (anteriormente PUT) y DELETE. Continuando, solo un ejemplo de una clase y dos URL base, puede hacer lo mismo de una manera más comprensible. Funciona así:
Mantengámoslo simple y fácil. Al elegir un nombre para una propiedad, considere usar un nombre de roca que signifique el lugar sobre el que acaba de leer, en lugar de un nombre más general. Ahora creo que necesitamos publicar los comentarios, videos y tweets de Platzi.
Teniendo en cuenta lo anterior, no es una buena idea escribir direcciones URL como /producto o /contenido. De hecho, es un nombre muy abstracto y no indica qué tipo de recurso se utiliza. Por otro lado, si crea URL como /anuncios, /videos, /tweets, el desarrollador sabrá de inmediato qué es cada URL.
Elegir un nombre para identificar los recursos suele ser fácil. Mi recomendación final es hacer mucho. Como muchas otras API. No compares palabras y lotes. En resumen, mantengamos la URL simple y única.
Relación entre recursos
Por ahora, este trato puede parecer simple. Pero, ¿y si los recursos están vinculados entre sí? Suponga que desea escribir una URL que recupere el nombre de usuario de cada estudiante que ha tomado educación especial. Se vería así:
¿Cómo puedo obtener JSON con todos los estudiantes que han completado un curso pero también obtienen una suscripción de Navidad? La URL puede ser mucho más larga.
Como puede ver, esta URL no sigue las mejores prácticas de comprensión de API. En el caso anterior, y en general para la relación de recursos, puede definir reglas simples que son efectivas durante la creación. El máximo de la URL debe ser de 2 niveles. Es decir, el identificador del recurso. Sin embargo, debemos evitar las URL de valor.
Este problema se puede resolver de una manera más inteligente y limpia. Utilice el parámetro con “?”
O aplique más restricciones y elimine estas agencias:
La aplicación de restricciones de URL también le permite aplicar filtros a sus consultas y guardar la URL con la mayor facilidad posible.
¡Aprendamos a manejar errores!
Cuando un desarrollador trabaja con una API, todo lo que sucede dentro es una caja negra para él. Si algo sale mal y no proporciona suficientes datos, el uso de la API comenzará a cansarlo y agotarlo. Tengamos en cuenta cómo es el proceso a la hora de aprender el oficio o utilizar nuevas herramientas.
Los diseñadores a menudo aprenden haciendo y por error. Por lo tanto, los errores en las APIs serán una de las herramientas más importantes de nuestros usuarios. Así como usa verbos HTTP para ejecutar (CRUD) en recursos, también puede escribir código HTTP para indicar el estado de una solicitud.
Por otro lado, si nuestra API es grande y compleja, te recomendamos que gestiones los números de error. Generalmente, la respuesta tiene tres tipos de situaciones:
- Todo funcionó perfectamente
- Ocurrió un error porque la solicitud no era válida.
- Se produce un error en los tres lados.
Podemos gestionar cualquier póliza como queramos. Sin embargo, se recomienda no exceder este número. Por ejemplo, la API GData de Google solo usa 10 dígitos. La API de Netflix solo usa 9. Puedes decidir según la dificultad de tu sistema. Pero asegúrese de mantenerlo simple. Cuando trate con números incorrectos, recuerde que se está comunicando con personas y escribiendo palabras que otros pueden entender.