Hva er et standardbibliotek?
I dataprogrammering er et standardbibliotek en serie funksjoner, konstanter og andre språkdefinisjoner som er inkludert som en del av kjernekompilatorpakken. Standardbiblioteket gir en programmerer den grunnleggende muligheten til å lage enkle programmer og manipulere grunnleggende data. Det gir også muligheten til på en eller annen måte samhandle med vertsoperativsystemet slik at informasjonsbehandling ikke blir en triviell oppgave. Alle implementeringer av en gitt språkkompilator inkluderer standardbiblioteket, og det er generelt nedoverkompatibelt med tidligere versjoner av biblioteket slik at grunnleggende språkfunksjonalitet blir bevart når det utvikler seg over tid.
Et bibliotek, i bred forstand, er en samling prosedyrer, funksjoner, klasser eller andre elementer i et dataprogram som er tilgjengelig for en programmerer. Disse elementene er vanligvis gruppert i kategorier som definerer deres funksjonalitet, for eksempel input, output og prosesshåndtering. Noen biblioteker er avhengige av at andre biblioteker fungerer som de skal, et konsept som kalles avhengighet. Viktige variabler, for eksempel maksimal verdi for en heltal datatype eller den numeriske definisjonen av et nulltegn, kan lagres i et bibliotek. De er vanligvis allerede samlet deler av datakode, forhindrer skadelige modifikasjoner og beskytter proprietær programmeringskode.
Et standardbibliotek forsøker å inkludere alle grunnleggende og nødvendige funksjoner som et bredt spekter av programmer vil kreve for å kjøre på en eller annen måte. Dette må balanseres mot å inkludere for mange biblioteker. Et stort standardbibliotek betyr at distribusjonsstørrelsen på et fullført program på noen språk kan være utrolig stor og oppblåst med biblioteker som aldri blir brukt. Inkludering av for mange filer i et standardbibliotek kan også føre til problemer med språkutviklingen, fordi funksjoner som sjelden brukes, må oppdateres med hvert språk eller kompilatorendring, noe som øker mengden arbeid som kreves for en ny utgivelse.
Omvendt kan et standardbibliotek som har for lite funksjonalitet føre til at hver programmerer må tilpasse installere eksterne biblioteker og inkludere dem spesifikt i programutgivelser. Dette kan føre til en type sekundær, samfunnsdrevet vedlikehold av en standard som ikke er kontrollert av det primære språkutviklingsteamet. Noen språk tilpasser seg slike situasjoner ved å inkludere ofte brukte biblioteker i standardsettet når samfunnet har gjort behovet klart.
Ulike språk har forskjellige designfilosofier om hva som skal være i standardbiblioteket. I tillegg kan mekanikken bak hvordan kompilatoren lager et kjørbart program også bestemme parametrene for biblioteket. Tolkede språk har en tendens til å ha en større samling biblioteker i standard settet, mens språk på lavt nivå ofte har svært få.