Applikasjonsprogrammeringsgrensesnittet , også kjent under akronymet API , på engelsk , application programming interface , [ 1 ] er et sett med subrutiner , funksjoner og prosedyrer (eller metoder , i objektorientert programmering ) som tilbyr et bestemt bibliotek for bruk av annen programvare som et abstraksjonslag . [ 2 ]
De brukes vanligvis i programmeringsbiblioteker . [ 2 ]
Et API representerer evnen til å kommunisere mellom programvarekomponenter . Det er settet med anrop til visse biblioteker som tilbyr tilgang til visse tjenester fra prosessene og representerer en metode for å oppnå abstraksjon i programmering , generelt (men ikke nødvendigvis) mellom lavere og høyere nivåer eller lag av programvaren . Et av hovedformålene med et API er å tilby et sett med generelle funksjoner , for eksempel å tegne vinduer eller ikoner til skjermen . På denne måten drar programmerere nytte av fordelene med APIer ved å benytte seg av funksjonaliteten deres, og unngår arbeidet med å programmere alt fra begynnelsen. APIer er også abstrakte: programvare som gir en viss API kalles vanligvis implementeringen av den API.
For eksempel kan du se oppgaven med å skrive " Hello World " på skjermen på forskjellige abstraksjonsnivåer :
Som du kan se, krever det første alternativet flere trinn, som hver er mye mer komplisert enn trinnene i alternativene nedenfor. Videre er det slett ikke praktisk å bruke den første tilnærmingen til å representere en stor mengde informasjon , for eksempel en encyklopedisk artikkel på skjermen, mens den andre tilnærmingen forenkler oppgaven ved å fjerne ett trinn og gjøre resten enklere, og det tredje måte krever ganske enkelt å skrive " Hello World ". Imidlertid mister API-er på høyt nivå generelt fleksibilitet; for eksempel er det mye vanskeligere i en nettleser å rotere tekst rundt en prikk med en blinkende kontur enn det er å programmere den på et lavt nivå. Når du velger å bruke et API, må det finne en viss balanse mellom dens kraft, enkelhet og tap av fleksibilitet.