logo
Publicado el

Apis vs SDK

Apis vs SDK

¿Qué es una api?

Que tal soy yo fiamita, y voy explicarte un poquito cómo funcionan nuestras queridas API, vas a escuchar muy seguido esto en programación, es fácil 😉 "una interfaz para que un programa de software se comunique con otro", pero si no entendes a qué me refiero es lo que conecta tu código con las reglas de tu aplicación para que todo funcione correctamente. El ejemplo más fácil que puedo darte es cuando inicias sesión en el lolsito, tu cuenta, los campeones, estadísticas y más se encuentran disponibles a través de los end points de estas API https://developer.riotgames.com/apis (puntos de acceso específicos dentro de la API que permiten realizar operaciones como leer, crear, actualizar o eliminar datos, al buen CRUD nada le gana)

api vs sdk

Tipos de api

Tipo de APIDescripciónEjemplos
API web

Permiten a los usuarios interactuar con navegadores y dispositivos web para ejecutar servicios web.

Google Maps API, Twitter API, Facebook Graph API

API SOAPAlternativa preferida para una estricta privacidad y seguridad de los datos.PayPal SOAP API
API abiertas (públicas)

Son públicas y permiten a los desarrolladores acceder a funcionalidades específicas.

OpenWeatherMap API, GitHub API, NASA API

API REST (RESTful)

Facilitan el uso y optimizan el ancho de banda al proporcionar acceso a recursos web.

Twitter REST API, Spotify Web API, Stripe API

JSON

Formato de intercambio de datos utilizado para representar números, cadenas y colecciones.

Ejemplos
JSON-RPC

Protocolo de llamada a procedimiento remoto (RPC) utilizado para llamadas asincrónicas al servidor.

Ejemplo web3, especificaciones

¿Qué es un sdk?

api vs sdk

Un SDK (Software Development Kit 🧐) es un conjunto de herramientas que ayudan a los desarrolladores a crear aplicaciones para una plataforma específica, incluye libs de código, herramientas de desarrollo, examples, tests y documentación. Contiene todos los componentes que un desarrollador necesita para crear nuevas aplicaciones para un producto específico y su entorno.

Suelen ser integraciones rápidas de servicios de aplicaciones como el pago (Mercado Pago), la ubicación ( google maps), los mensajes ( Chatsdk), el análisis y la publicidad (Google Cloud sdk). Por otro lado algunos SDK ayudan a crear software específico en una plataforma, como sucede con el desarrollo de aplicaciones Java, los queridos programadores que hayan usado este lindo lenguaje bien sabrán que se tarda más en configurar el IDE que en hacer un hola mundo, gracias al famoso JDK que puede descargarse en la página oficial de Oracle, este kit de desarrollo es vital para programar en este lenguaje. ¿capisci?

java 3 billion image joke

¿Qué elijo, api o sdk ?🐉⚔

api vs sdk

Bueno recalculemos, ¿Cuál uso entonces? mirá SDK ofrece herramientas completas para construir aplicaciones rápido, sirve mucho para las empresas, mientras que una API facilita la comunicación entre plataformas, permite integraciones flexibles y eficientes, pero suelen requerir más trabajo y amor. Generalmente, se usan ambos, ya que un SDK suele tener una API. La elección entre API y SDK depende de las necesidades específicas del proyecto y la preferencia del programador que levanta la pala. Las API son más comunes en integraciones simples, mientras que los SDK son preferidos para proyectos más complejos.

Igual lo más probable es que uses API de momento pero quiero que sepas que podes usar facilmente un sdk como los de mercado pago, que si bien tenes la api ademas existen estas integraciones llamadas sdk tanto para el Server Side (osea el backend adaptado para PHP, Java, Node, Ruby, Net ó Python) y como para el Client Side (el front, con React ó modules).

Espero te haya gustado leer el contenido que te proporcioné con arduo trabajo duro fiero y macizo, sos libre de hacer lo que gustes con este conocimiento, te deseo muy buen finde. 😉