Hva er forholdet mellom SDK og API?
I programvareutvikling, etter hvert som systemets omfang øker, blir det avgjørende å dele komplekse systemer inn i mindre komponenter, hvor design av programmeringsgrensesnitt er spesielt viktig. Hovedoppgaven til grensesnittdesign er å fordele ansvaret i programvaresystemet på en fornuftig måte. Godt grensesnittdesign kan redusere avhengigheten mellom de ulike delene av systemet, øke modulens sammenheng, samtidig som det reduserer koblingen mellom modulene, og dermed forbedre systemets vedlikeholdbarhet og utvidbarhet. API, som en form for grensesnitt, spiller en viktig rolle i interaksjonen mellom programmer, og det er en tett forbindelse mellom SDK og API.
01 API
(1) Konseptet API
API, som står for "Application Programming Interface" (Programmeringsgrensesnitt for applikasjoner), er et sett med forhåndsdefinerte funksjoner som er ment å fungere som et "grensesnitt" for å koble sammen to forskjellige ting. Det gir en måte for applikasjoner og utviklere å få tilgang til rutiner i en programvare eller maskinvare, uten å måtte berøre kildekoden eller forstå detaljene i dens interne virkemåte.
Faktisk er API funksjoner som andre har skrevet på forhånd, og som kan utføre spesifikke funksjoner. Du trenger bare å kalle metodene deres i henhold til det angitte grensesnittet, overføre de angitte parameterne, og funksjonen vil hjelpe deg med å utføre disse funksjonene.

Fra konseptet "grensesnitt" refererer det i databehandling til stedet der to forskjellige enheter samhandler, enten det er to fullstendig forskjellige systemer eller to programsegmenter. Derfor kan "I" i grensesnittet forstås slik. På dette grunnlaget kalles stedet der mennesker samhandler med programmer UI (brukeroppgrensesnitt), inkludert alle former for input, som mus, tastatur, berøringsskjerm og taleinput osv. Interaksjonen mellom programmer kalles API, og all ikke-menneske-til-menneske-interaksjon skjer gjennom API, og den essensielle interaksjonen er dataoverføring og funksjonsutløsning.
(2) Klassifisering av API
API deles inn i systemnivå-APIer (som Windows, Linux, Unix, etc.) og ikke-operativsystemnivå-tilpassede APIer. Som en effektiv kodepakningsmodell har Microsoft Windows' API-utviklingsmodell blitt etterlignet av mange kommersielle applikasjonsutviklingsselskaper, og de har utviklet API-funksjoner for visse kommersielle applikasjonssystemer for å publisere, for å lette funksjonsutvidelse fra tredjeparter. For eksempel API-er utviklet av Google, Apple og Nokia.
API deles også inn i åpne API-er og private API-er. Som navnet antyder, er åpne API-er grensesnitt som er offentlig tilgjengelige for alle, slik at alle kan kalle dem og få tilgang til dataene bak dem. Noen ganger vil selskaper gjøre API-er til sine offentlige åpne systemer, det vil si at selskapet formulerer sine egne systemgrensesnittstandarder, og alle medlemmer av selskapet kan kalle kildekoden gjennom dette grensesnittstandardet når de trenger å utføre systemintegrasjon, tilpasning og programapplikasjoner. Denne grensesnittstandardet kalles et åpent API. Private API-er er grensesnitt som ikke er åpne for offentligheten.
02 SDK
(1) Konseptet SDK
SDK, som står for "Software Development Kit" (Programvareutviklingssett), er vanligvis en samling av utviklingsverktøy som programvareingeniører bruker til å bygge applikasjoner for spesifikke programvarepakker, programvarerammer, maskinvareplattformer, operativsystemer osv. Enkelt sagt er SDK et verktøysett som leveres av en tredjepartsleverandør for å implementere en funksjon i et programvareprodukt.
SDK leveres vanligvis av profesjonelle selskaper som tilbyr profesjonelle tjenester, for eksempel å tilby Android-utviklingsverktøy eller tjenester basert på maskinvareutvikling osv. Det finnes også SDK-er for visse programvarefunksjoner, som push-teknologi, bildegjenkjenningsteknologi, mobilbetalingsteknologi, talegjenkjenningsteknologi osv. I den store trenden med internettåpenhet har noen funksjonelle SDK-er blitt behandlet som et produkt for drift.
Utviklere trenger ikke lenger å utvikle hver funksjon i produktet selv, de trenger bare å velge en passende og stabil SDK-tjeneste, og integrere en funksjon i produktet på kort tid.
(2) Forskjellen mellom SDK og API
SDK tilsvarer et utviklingsintegrasjonsmiljø, mens API er et data-grensesnitt. API-data kalles i SDK-miljøet.
Faktisk inneholder SDK definisjonen av API-et, API-et definerer en evne, en grensesnittspesifikasjon, og SDK-et kan inneholde denne evnen, denne spesifikasjonen. Men SDK inneholder ikke bare API-et og implementeringen, det er et programvareverktøysett som også inneholder mange andre hjelpefunksjoner.
SDK inneholder materialet som kreves for å bruke API-et, og derfor kalles måten å skrive Windows-applikasjoner ved å bruke bare API-et ofte "SDK-programmering".





