En app med API – i vilket syfte?

BLOGG - 27 apr 2017

Bakom varje framgångsrik app som Facebook, Instagram och Snapchat så finns ett så kallat API. API på engelska står för ”Application Programming Interface”, och på svenska översätts det till ”applikationsprogrammeringsgränssnitt”.

I större appar där man exempelvis ska kunna registrera sig som medlem, logga in, hämta personliga data och kunna skicka meddelanden till andra medlemmar, krävs ett API som hanterar dessa förfrågningar. Som backend-utvecklare till ett API så vill jag hålla mig till de senaste trenderna, och personligen väljer jag att bygga mitt API i Node.js.

 

Varför Node.js, och vad är det?

Node.js är en plattform som använder sig utav Google Chrome’s V8 Javascript motor. Javascript används mycket för client-side, alltså i webbläsare för besökare på webben. Med Node.js kan man skriva server side-applikationer i Javascript för olika syften som realtidschat, multiplayerspel och även bygga ett API som kommunicerar med databas för att lagra och hämta information.

 

Node.js använder även sig av en ”single-threaded” -modell, som motsatt för en traditionell Apache HTTP server som använder sig utav ”multi-threaded” -modell, alltså en begränsad del av antal ”threads” som hanterar anropen. Med Node.js event-mekanism kan servern hantera en rad fler förfrågningar på en enda ”thread” än vad en traditionell server kan utan att behöva blockera något då flera anrop görs mot servern. Fördelen här är att den inte behöver skapa upp en ny ”thread” vilket en traditionell HTTP server gör för varje enskilt anrop som sker. Med Node.js så går alla anrop mot servern endast genom en enda ”thread”.

 

Fördelar med Node.js:

• Går att bygga skalbara applikationer

• Hanterar JSON ( Javascript Object Notation ) på ett snyggt sätt.

• Modulärt – NPM ( Node Package Manager) går att nyttja andras open-source projekt där de har fokuserat på de vanliga problem som finns inom vissa områden, exempelvis socket.io som är ett realtids ramverk för Node.js så man kan komma igång snabbt med att bygga realtidsapplikationer med Node.js ).

• Väldigt snabbt.


Skrivet av Robin Rydén.

#api

#nodejs