Skip to main content

Hvad er et indbygget udviklingssæt?

I computerprogrammering og softwareudvikling er et indbygget udviklingssæt (NDK) normalt en abstrakt programmeringsgrænseflade (API), der giver en udvikler mulighed for at bruge funktioner eller udføre kode direkte gennem det centrale operativsystem.Denne metode til udførelse af et program adskiller.Brugen af et indbygget udviklingssæt kan være vigtigt i applikationer, der kræver de hurtigst mulige udførelse og behandlingstider, fordi det kan give direkte adgang til hardware og biblioteker, som operativsystemet bruger.Afhængig af den type program, der er skrevet og måloperativsystemet, kan brugen af et native udviklingssæt overhovedet ikke øge programhastigheder skrevet til nogle enheder, såsom smarttelefoner, eller brug af fortolkede computersprog udføres ikke direkte af kerneoperativsystemprocesserne eller kernen.I stedet udføres programkoden af et separat program kendt som en virtuel maskine (VM) eller tolk.Den virtuelle maskine læser koden, udvides og løser kommandoer og grænseflader med kernen for at udføre koden.Dette kan være fordelagtigt for nogle udviklere, fordi det giver et godt lag af abstraktion til bærbarhed og efterlader mange komplekse detaljer, såsom ressourcestyring og filhåndtering, til skaberne af den virtuelle maskine.Maskinen kan være en hindring for nogle typer programmer.VM kan bremse udførelsen eller undlade at give adgang til nogle funktioner inden for værtskernen.Et indbygget udviklingssæt til måloperativsystemet eller enheden udsætter kernens funktioner for applikationen, der er skrevet.Afhængigt af omfanget af kittet kan dette give et program mulighed for direkte adgang til hardware, indlæse sine egne brugerdefinerede biblioteker i kernen eller bruge systemspecifikke optimeringer.

Et indbygget udviklingssæt bruges ofte kun til tidskritiske deleaf et program.Dette kan være beregninger af grafikbehandling, output til displayet eller filinput og output.Ikke alle programmer, der bruger indfødte funktioner eller rutiner, vil se en hastighedsfordel, fordi den virtuelle maskine muligvis allerede foretager optimeringer til den administrerede kode, så den resulterende maskinkode er identisk, uanset om oprindelige funktioner bruges.Derudover binder indfødte kode et program til en bestemt implementering af et operativsystem og undertiden en bestemt version af en enhed, hvilket betyder, at kode ved hjælp af et indbygget udviklingssæt muligvis ikke let porteres til andre systemer.