top of page

În practică #6 | Ce este un Web API și unde îl folosești fără să îți dai seama?

Comanzi mâncare printr-o aplicație și vezi imediat unde se află curierul. Cauți o adresă și apare harta. Plătești online, iar în câteva secunde primești confirmarea tranzacției. Pentru utilizator, toate aceste funcționalități fac parte din aceeași aplicație. În realitate, în spatele ecranului comunică mai multe sisteme și servicii, fiecare cu rolul său.

O mare parte din această comunicare este posibilă prin intermediul API-urilor.

În episodul anterior al seriei „În practică” am urmărit principalele componente din spatele unei aplicații moderne. Acum ne oprim asupra uneia dintre ele și vedem ce este un Web API, cum funcționează și de ce îl întâlnim în atât de multe dintre serviciile digitale pe care le folosim.



Ce este, de fapt, un API?

API vine de la Application Programming Interface și descrie, simplificat, un mod prin care două aplicații sau sisteme pot comunica între ele după un set de reguli stabilite.

Să luăm exemplul unei aplicații de rezervări. Atunci când cauți un hotel pentru o anumită perioadă, aplicația trebuie să afle ce camere sunt disponibile și la ce preț. Pentru plata rezervării poate comunica apoi cu un serviciu separat de procesare a plăților, iar pentru afișarea locației poate utiliza un serviciu de hărți.

Utilizatorul nu trebuie să știe cum sunt construite aceste sisteme și nici să treacă de la unul la altul. Aplicația solicită informația de care are nevoie, serviciul respectiv răspunde, iar rezultatul este afișat în aceeași interfață.

API-ul stabilește cum se face acest schimb de informații.


Și atunci ce este un Web API?

Un Web API permite acest tip de comunicare prin web.

În termeni simpli, o aplicație trimite o cerere, iar sistemul căruia i se adresează o procesează și transmite un răspuns. Datele primite pot fi apoi folosite de aplicație pentru a afișa o informație, a actualiza un cont, a înregistra o comandă sau a declanșa o anumită acțiune.

De exemplu, o aplicație meteo nu trebuie să dețină propria rețea de stații meteorologice pentru a ne arăta temperatura din Cluj-Napoca. Poate solicita informațiile unui serviciu specializat printr-un API și le poate integra în propria interfață.

Același principiu este folosit într-o varietate foarte mare de servicii digitale.


Folosim API-uri aproape zilnic

API-urile au devenit o componentă obișnuită a aplicațiilor moderne tocmai pentru că permit conectarea unor servicii dezvoltate separat.

Le întâlnim atunci când un magazin online procesează o plată, când o aplicație ne permite să ne autentificăm folosind un cont existent, când o platformă de transport afișează o hartă sau când un site integrează un serviciu de inteligență artificială.

Sunt folosite și în interiorul companiilor, unde diferite aplicații trebuie să facă schimb de date. Un magazin online, de exemplu, poate avea nevoie să comunice cu sistemul de gestiune a stocurilor, cu platforma de facturare, cu serviciul de curierat și cu instrumentele folosite pentru relația cu clienții.

Pentru utilizator, experiența poate părea unitară. Din punct de vedere tehnic, ea este rezultatul colaborării dintre mai multe sisteme.


De ce nu construiesc dezvoltatorii totul de la zero?

Pentru că, în multe situații, nici nu ar avea sens.

Dacă o aplicație are nevoie de hărți, echipa care o dezvoltă nu trebuie să creeze propriul serviciu de cartografiere. Dacă are nevoie să proceseze plăți, poate integra un serviciu specializat. Același lucru este valabil pentru autentificare, notificări, traduceri, informații despre vreme sau numeroase funcționalități bazate pe inteligență artificială.

API-urile permit dezvoltatorilor să folosească servicii existente și să le integreze în propriile produse. În același timp, fac posibilă conectarea unor sisteme construite în momente diferite sau cu tehnologii diferite.

Tocmai de aceea, capacitatea de a construi și utiliza API-uri este importantă în dezvoltarea software actuală.


Ce trebuie să știe un dezvoltator?

Dincolo de definiție, lucrul cu un Web API presupune înțelegerea modului în care circulă informația între sisteme: cum este formulată o cerere, ce date sunt transmise, ce răspuns primește aplicația și ce se întâmplă atunci când apare o eroare.

La fel de importantă este securitatea. Nu orice aplicație ar trebui să poată solicita orice informație, iar datele transmise trebuie protejate. De aceea, autentificarea, autorizarea și gestionarea corectă a accesului fac parte din dezvoltarea unui API.

Sunt aspecte care devin mult mai clare atunci când sunt puse în practică într-un proiect real.


De la teorie la practică

Web API-urile fac parte și din programa cursului .NET, organizat în cadrul proiectului Transilvania Digitală Inovativă 5.0. [Detalii aici]

Participanții lucrează cu ASP.NET Core Web API și urmăresc concret modul în care o aplicație comunică cu baza de date și cu alte componente. Este una dintre etapele prin care noțiunile de C#, baze de date și dezvoltare software ajung să fie conectate într-o aplicație funcțională.

Iar dacă termenul „Web API” părea foarte tehnic la începutul articolului, principiul din spatele lui este unul pe care îl întâlnim permanent: aplicațiile pe care le folosim nu funcționează izolat. Ele cer, primesc și transmit informații, iar API-urile fac posibilă o mare parte din această comunicare.


➡️ În episodul următor...

Git și GitHub: de ce aproape orice echipă software le folosește?

Atunci când mai mulți dezvoltatori lucrează la aceeași aplicație, trebuie să poată modifica același proiect fără să își piardă sau să își suprascrie munca. În următorul episod din seria „În practică”, vedem cum ajută Git la gestionarea modificărilor din cod și ce rol are GitHub în colaborarea dintre dezvoltatori.


„În practică” este seria prin care explicăm, într-un limbaj accesibil, concepte și tehnologii despre care se vorbește tot mai des în domeniul digital și arătăm cum se regăsesc ele în activitatea de zi cu zi a companiilor și a profesioniștilor.


Citește și celelalte articole din seria „În practică”

Comentarii


bottom of page