Du har sannsynligvis sett begrepet "API" opp. Operativsystem, nettleser og appoppdateringer annonserer ofte nye APIer for utviklere. Men hva er en API?
Begrepet API er en akronym, og den står for "Application Programming Interface."
Tenk på en API som en meny i en restaurant. Menyen gir en liste over retter du kan bestille, sammen med en beskrivelse av hver tallerken. Når du angir hvilke menyelementer du vil ha, gjør restaurantens kjøkken arbeidet og gir deg noen ferdige retter. Du vet ikke nøyaktig hvordan restauranten forbereder den maten, og du trenger egentlig ikke.
På samme måte viser en API en rekke operasjoner som utviklere kan bruke sammen med en beskrivelse av hva de gjør. Utvikleren trenger ikke nødvendigvis å vite hvordan for eksempel et operativsystem bygger og presenterer en "Lagre som" -dialogboksen. De trenger bare å vite at det er tilgjengelig for bruk i appen deres.
Dette er ikke en perfekt metafor, da utviklere må gi sine egne data til API-en for å få resultatene, så kanskje det er mer som en fancy restaurant hvor du kan levere noen av dine egne ingredienser, vil kjøkkenet fungere med.
Men det er stort sett nøyaktig. APIer tillater utviklere å spare tid ved å utnytte en plattforms implementering for å gjøre det nitty-gritty arbeidet. Dette bidrar til å redusere mengden kodeutviklere må opprette, og bidrar også til å skape mer konsistens på tvers av apper for samme plattform. APIer kan kontrollere tilgangen til maskinvare- og programvareressurser.
La oss si at du vil utvikle en app for en iPhone. Apples IOS-operativsystem gir et stort antall APIer - som alle andre operativsystemer gjør - for å gjøre det lettere for deg.
Hvis du vil legge inn en nettleser for å vise en eller flere nettsider, for eksempel, du må ikke programmere din egen nettleser fra grunnen bare for søknaden din. Du bruker WKWebView API til å legge inn et WebKit (Safari) nettleserobjekt i programmet.
Hvis du vil ta bilder eller video fra iPhone-kameraet, trenger du ikke å skrive ditt eget kamera grensesnitt. Du bruker kameraprogrammet til å legge inn iPhones innebygde kamera i appen din. Hvis APIer ikke eksisterte for å gjøre det enkelt, må apputviklere lage sin egen kameraprogramvare og tolke innspillingen til kamerahardwaren. Men Apples operativsystemutviklere har gjort alt dette hardt arbeid, slik at utviklerne bare kan bruke kameraprogrammet til å legge inn et kamera, og deretter fortsette å bygge sin app. Og når Apple forbedrer kameraprogrammet, vil alle appene som er avhengig av det, utnytte den forbedringen automatisk.
Dette gjelder for alle plattformer. For eksempel, vil du opprette en dialogboks på Windows? Det er en API for det. Vil du støtte fingeravtrykksautentisering på Android? Det er også en API for det, slik at du ikke må teste alle forskjellige Android-produsentens fingeravtrykkssensor. Utviklere trenger ikke å gjenoppfinne hjulet igjen og igjen.
APIer brukes også til å kontrollere tilgangen til maskinvareenheter og programvarefunksjoner som et program ikke nødvendigvis har tillatelse til å bruke. Derfor støtter API-er ofte en stor rolle i sikkerheten.
RELATERT: Slik stopper du nettsteder fra å be om stedet din
Hvis du for eksempel har besøkt et nettsted og sett en melding i nettleseren din, Nettstedet ber om å se din presise plassering, den nettsiden forsøker å bruke geolocation API i nettleseren din. Nettlesere avslører APIer som dette for å gjøre det enkelt for webutviklere å få tilgang til din plassering. De kan bare spørre "hvor er du?" Og nettleseren gjør det harde arbeidet med å få tilgang til GPS eller nærliggende Wi-Fi-nettverk for å finne din fysiske plassering.
Men nettlesere avslører også denne informasjonen via en API, fordi det er mulig å kontrollere tilgangen til den. Når et nettsted ønsker tilgang til din nøyaktige fysiske plassering, er den eneste måten de kan få tak i, via lokaliserings-API. Og når et nettsted prøver å bruke det, kan du-brukeren - velge å tillate eller nekte denne forespørselen. Den eneste måten å få tilgang til maskinvareressurser som GPS-sensoren, er gjennom API, slik at nettleseren kan kontrollere tilgangen til maskinvaren og begrense hvilke apper som kan gjøre.
Det samme prinsippet brukes på moderne mobile operativsystemer som iOS og Android, der mobilappene har tillatelser som kan håndheves ved å kontrollere tilgangen til APIer. Hvis en utvikler forsøker å få tilgang til kameraet via kameraprogrammet, kan du for eksempel nekte tillatelsesforespørselen, og appen har ingen måte å få tilgang til enhetens kamera.
Filsystemer som bruker tillatelser - som de gjør på Windows, Mac , og Linux-ha de tillatelsene som håndheves av filsystemet API. En typisk applikasjon har ikke direkte tilgang til den raske fysiske harddisken. I stedet må appen få tilgang til filer via en API.
APIer brukes også for alle andre grunner. For eksempel, hvis du noen gang har sett et Google Maps-objekt som er innebygd på et nettsted, bruker nettstedet nettstedet Google Maps til å integrere det kartet. Google avslører APIer som dette for webutviklere, som kan bruke APIene til å plukke komplekse objekter rett på deres nettsted. Hvis APIer som dette ikke eksisterte, kan utviklere kanskje lage egne kart og gi sine egne kartdata bare for å sette et lite interaktivt kart på et nettsted.
Og fordi det er en API, kan Google kontrollere tilgangen til Google Kart på tredjeparts nettsteder, slik at de bruker det på en konsistent måte, i stedet for å forsøke å legge inn en ramme som viser Google Maps-nettsiden, for eksempel.
Dette gjelder for mange forskjellige onlinetjenester. Det er APIer for å be om tekstoversettelse fra Google Translate, eller å legge inn Facebook-kommentarer eller tweets fra Twitter på et nettsted.
RELATED: Hva er OAuth? Slik fungerer Facebook, Twitter og Google-påloggingsknapper.
OAuth-standarden definerer også en rekke APIer som lar deg logge på et nettsted med en annen tjeneste, for eksempel å bruke Facebook, Google eller Twitter-kontoer å logge inn på et nytt nettsted uten å opprette en ny brukerkonto bare for det aktuelle nettstedet. APIer er standardkontrakter som definerer hvordan utviklere kommuniserer med en tjeneste, og hvilken type utdata utviklerne bør forvente å motta.
Hvis du har kommet gjennom dette, får du en bedre ide om hva en API er. Til slutt trenger du ikke å vite hva en API er, med mindre du er utvikler. Men hvis du ser en programvareplattform eller tjeneste har lagt til nye APIer for ulike maskinvare eller tjenester, bør det være enklere for utviklere å dra nytte av slike funksjoner.
Image Credit: patpitchaya / Shutterstock.com.
De beste værappene for Android
Alle har minst en vær app installert på telefonen, men det er så mange forskjellige der ute. Å finne den "beste" kan være litt vanskelig, så vi har avrundet et par av de beste for å hjelpe deg med å bestemme. Åpenbart er "best" super subjektiv, men vi ønsker å gjøre beslutningen enkel - etter alt, det er det som sjekker været skal være.
Slik roterer du en video på Android
Det skjer en krig der ute. Du vil ikke se det på nyhetene, du vil ikke lese om det i papiret - men det skjer. Det er en vanskelig kamp som mange av oss aldri tenker på: krigen mot feilrettet video. Har du en video som dukker opp sidelengs? Slik roterer du videoen 90 grader på Android. Dette skjer vanligvis, og telefonen roterte ikke retningen når du begynte å ta opp en video.