Entendamos los conceptos de API y Web Services y su diferencia.
- API: Application Programming Language. Una interfaz que permite interactuar con código de terceros.
- Web Service: Servicio que permite la comunicación entre dos computadoras a través de la red.
Diferencias entre APIs y Web Services
El día de hoy vamos a ver la diferencia entre web services y APIs. Bueno lo primero:
¿Qué es un API?
Un API es un Application Programming Interface. Es una interfaz para permitir que se comparta código entre terceras personas. Un ejemplo muy claro es el kernel de linux, si tú lo buscas te vas a encontrar que es un API y que tiene un montón de métodos, un montón de funciones que puedes utilizar para interactuar con el kernel de linux. Otro ejemplo podría ser AJAX que si lo buscas pues mucha gente diría “pues es la documentación” bueno pues esa documentación son todos los métodos que puedes utilizar para interactuar con javascript y ajax y hacer diferentes funcionalidades eso es un API.
Web APIs
Algo que sucede mucho hoy en día es que cuando hablamos de APIs no pensamos en este tipo de API sino que pensamos en las API de la web
Un API en la web podría ser por ejemplo la de google maps que te permite dibujar cosas en el mapa dentro de tu sitio web.
¿Qué es un web service?
Un web service es, como tal, un servicio que nos define específicamente la W3C que nos va a permitir comunicarnos entre dos máquinas a través del internet.
Aquí es donde realmente empieza la confusión. Un web API es un montón de cosas que por las que puede interactuar a través de la web y un servicio, un micro servicio, también vamos, un web service.
El WSDL
Bien, la situación aquí es la diferencia de lo que definimos en cada uno.
En un web service tenemos un contrato, es decir, tenemos una especificación muy clara de
cómo va a funcionar ese web service ese contrato se define en una cosa que se llama WSDL que es el web service description language. Esto es un XML que pues tiene toda la información y la descripción de cómo va a funcionar
ese web service.
Los web service funcionan sobre la web y generalmente van a utilizar un protocolo que se llama SOAP.
Las APIs por el contrario, las web APIS no tienen este protocolo definido, no tienen
reglas definidas de manera que puede regresar un JSON, puede regresar un XML
puede regresar código, puede regresar texto plano; la información puede llegar
de diferentes maneras.
Comunicación
Otro de los ejemplos muy claros de la diferencia es los web services están planeados para
comunicarse a través de mensajes y los web APIs pueden utilizar código como respuestas esa es la diferencia más importante entre cada uno de ellos.
REST
Un error muy típico es que a las web APIs casi siempre les llamamos REST y no necesariamente son APIs REST.
REST es un estándar que nos va a decir cómo va la arquitectura y no necesariamente siempre lo es.
Aprende en 3mins
Esta es una serie de videos con duración no mayor a 3 minutos para aprender conceptos de programación y tecnología.
Los temas surgen de lo que nos dejas en tus comentarios, así es que no dudes en comentar.
Suscribete a mi canal para recibir alertas cada que salga un nuevo video!
https://www.youtube.com/c/yosoydev
Links:
¿Te gustó este artículo?
Si te gustó este artículo, te ha servido o aprendiste algo nuevo; compártelo en tus redes sociales o invítame un cafe.