Interfejsi za programiranje mrežnih aplikacija (API-ovi)

Interfejs programiranja aplikacija (API) omogućava računarskim programerima pristup funkcionalnosti objavljenih softverskih modula i usluga. API definiše strukture podataka i potprogramske pozive koji se mogu koristiti za proširenje postojećih aplikacija sa novim funkcijama i potpuno nove aplikacije pored drugih softverskih komponenti. Neki od ovih API-ja posebno podržavaju mrežno programiranje .

Mrežno programiranje je vrsta razvoja softvera za aplikacije koje se povezuju i komuniciraju preko računarskih mreža uključujući Internet. Mrežni API-ji pružaju ulazne tačke za protokole i biblioteke za ponovno korištenje. API-ji za mrežu podržavaju Veb pregledače, Veb baze podataka i mnoge mobilne aplikacije. Oni su široko podržani na mnogim različitim programskim jezicima i operativnim sistemima.

Socket Programming

Tradicionalno mrežno programiranje pratilo je model klijent-servera . Primarni API-ovi koji se koriste za mrežno povezivanje klijent-servera implementirani su u bibliotekama soketa ugrađenih u operativne sisteme. Berkeley sockets i Windows Sockets (Winsock) API su dva osnovna standarda za socket programiranje već dugi niz godina.

Daljinski postupak poziva

API RPC -a proširuju osnovne tehnike mrežnog programiranja tako što dodaju mogućnost aplikacijama da pozivaju funkcije na udaljenim uređajima umesto da im šalju poruke. Sa eksplozijom rasta na World Wide Webu (WWW) , XML-RPC se pojavio kao jedan popularan mehanizam za RPC.

Protokol jednostavnog pristupa objektu (SOAP)

SOAP je razvijen krajem devedesetih kao mrežni protokol koji koristi XML kao svoj format poruke i HyperText Transfer Protocol (HTTP) kao svoj transport. SOAP je stvorio lojalno praćenje programera Web usluga i postao široko primenjen za poslovne aplikacije.

Prenos reprezentacije države (REST)

REST je još jedan programski model koji takođe podržava Web usluge koje su nedavno stigle na scenu. Kao i SOAP, API-ovi REST-a koriste HTTP, ali umjesto XML-a, REST aplikacije često odlučuju za korištenje Javnog Numbers Object (JSON). REST i SOAP se veoma razlikuju u svojim pristupima državnom upravljanju i bezbednosti, oba ključna pitanja za programera mreže. Mobilne aplikacije mogu ili ne mogu koristiti mrežne API-je, ali one koje često koriste REST.

Budućnost API-ova

I SOAP i REST i dalje se aktivno koriste za razvoj novih Web usluga. Kao mnogo novija tehnologija od SOAP-a, REST je verovatnije da se razvija i proizvodi druge granice razvoja API-a.

Operativni sistemi su takođe evoluirali kako bi podržali mnoge nove mreže API tehnologije. U modernim operativnim sistemima kao što je Windows 10, na primer, utičnice i dalje predstavljaju osnovni API, sa HTTP i ostalom dodatnom podrškom na vrhu za mrežni program RESTful style.

Kao što je često slučaj u kompjuterskim poljima, nove tehnologije teže da se razvijaju mnogo brže nego što stare zastarjele. Potražite zanimljive nove razvojne programe API-a, a naročito u oblastima cloud computinga i Internet of Things (IoT) , gdje su karakteristike uređaja i njihovi modeli korištenja sasvim drugačiji od tradicionalnih mrežnih programskih okruženja.