Aquesta setmana hem hagut d’afegir una nova funcionalitat per garantir el funcionament dels llistats amb camps asíncrons… i és que quan comences amb processos asíncrons, els mals de cap estan assegurats 🤯. També vaig escriure un post a LinkedIn que ha generat alguns comentaris. Un en particular em va cridar l’atenció: deia una cosa com “Sí, és l’oferta i la demanda…”. Bé, m’agradaria veure si aquesta afirmació es manté quan la situació es gira en sentit contrari. En tot cas, el que volia destacar és que, quan es tracta de processos, cal ser més empàtic per totes les parts.
En l’àmbit més personal, aquest divendres vaig sortir totalment de la meva zona de confort i vaig presentar una exposició: Aurora, Una rumia al Marroc de la Cati Salazar, dins del festival literari De soca-rel.
Començo amb algunes recomanacions,
💾 Programari
SingleFile: Una extensió per a Chrome i Firefox que permet descarregar una pàgina web en un únic fitxer.
🤔 Curiositats
Una web calidoscopi, on es pot veure el propi JavaScript que ho genera i fins i tot modificar paràmetres com la imatge de fons, les formes i la velocitat. T’hi pots quedar molta estona bocabadat!
📦 Recursos
Les 100 xerrades d’enginyeria del programari més vistes del 2024.
🌟 El concepte
Continuant amb el tema de la setmana passada, on vaig explicar què és una API i com funciona, avui aprofundirem en el versionat d'APIs. Quan una API s'utilitza de manera extensiva, canvis inesperats poden trencar integracions i generar problemes en les aplicacions que en depenen. Per evitar això, el versionat d'APIs esdevé essencial.
Per què cal versionar una API?
Quan una API es desplega, els seus usuaris esperen que funcioni de manera estable. No obstant això, amb el temps caldrà fer-hi millores, afegir funcionalitats o corregir errors. Sense un sistema de versionat, qualsevol canvi pot afectar negativament els clients que en depenen. Els motius principals per versionar una API són:
Evitar canvis trencadors: Si es fan canvis en els endpoints o en la resposta de l'API sense avisar, es poden trencar aplicacions que la utilitzen.
Permetre una transició suau: Les empreses poden oferir noves versions de l'API sense deixar de donar suport a les versions anteriors, permetent una migració progressiva.
Facilitar la compatibilitat: Els desenvolupadors poden treballar amb la versió que millor s'adapti a les seves necessitats sense preocupar-se per canvis inesperats.
Mètodes de versionat d'APIs
Hi ha diferents estratègies per versionar una API. Algunes de les més utilitzades són:
Versionat en l'URL
Pros: Fàcil d'identificar i implementar.
Contres: L'URL es torna més rígida i cal mantenir diverses rutes.
Exemple:
https://api.exemple.com/v1/usuari
Versionat per capçaleres HTTP
Pros: Manté les rutes netes i evita canvis en l'URL.
Contres: Pot ser menys intuïtiu i requereix una configuració addicional al client.
Exemple:
GET /usuari
Accept: application/vnd.exemple.v1+json
Exemples de proveïdors d'APIs
Moltes grans empreses apliquen estratègies de versionat per mantenir la compatibilitat:
Spotify: Utilitza versions a l'URL (
https://api.spotify.com/v1/search
).GitHub API: També usa capçaleres per definir la versió (
Accept: application/vnd.github.v3+json
).
Si estàs desenvolupant una API, pensar en com la versionaràs des del principi et pot estalviar molts maldecaps. No hi ha un únic mètode correcte, sinó que la millor opció dependrà de les necessitats del teu projecte.
A GISCE-TI, fem servir el versionat a la URL per tal que sigui més intuïtiu saber amb quina versió s'està treballant. Això ens permet gestionar les diferents versions de l'API de manera clara i estructurada.
Pel que fa als frontals, per mantenir la compatibilitat amb les APIs, aquests sempre proven primer amb la versió més nova disponible. Si no funciona, van provant amb versions anteriors fins a trobar-ne una que sigui compatible. Això ens permet desplegar el frontal i l'API de manera independent, evitant bloquejos i facilitant les actualitzacions progressives.
💖 Feedback
Si t’ha agradat i em vols ajudar, fes arribar aquest contingut a qui creguis que li pot interessar, i entra al canal de Telegram per comentar la publicació.