Vad är ett standardbibliotek?
I datorprogrammering är ett standardbibliotek en serie funktioner, konstanter och andra språkdefinitioner som ingår som en del av kärnkompileringspaketet. Standardbiblioteket ger en programmerare den grundläggande förmågan att skapa enkla program och manipulera basdata. Det ger också möjligheten att på något sätt interagera med värdens operativsystem så att informationsbearbetning inte blir en triviell uppgift. Alla implementeringar av en given språkkompilerare inkluderar standardbiblioteket, och det är i allmänhet nedåt kompatibelt med tidigare versioner av biblioteket så att grundläggande språkfunktionalitet bevaras när det utvecklas över tid.
Ett bibliotek, i bred mening, är en samling av procedurer, funktioner, klasser eller andra element i ett datorprogram som är tillgängliga för en programmerare. Dessa element grupperas vanligtvis i kategorier som definierar deras funktionalitet, till exempel input, output och processhantering. Vissa bibliotek förlitar sig på att andra bibliotek fungerar korrekt, ett begrepp som kallas beroende. Viktiga variabler, till exempel maximivärdet för en heltaldatatyp eller den numeriska definitionen av ett nolltecken, kan lagras i ett bibliotek. De är också vanligtvis redan sammanställda datorkoder, vilket förhindrar skadliga ändringar och skyddar proprietär programmeringskod.
Ett standardbibliotek strävar efter att inkludera alla grundläggande och nödvändiga funktioner som ett brett programprogram kräver för att kunna köras på ett eller annat sätt. Detta måste balanseras mot att inkludera för många bibliotek. Ett stort standardbibliotek innebär att distributionsstorleken för ett färdigprogram på vissa språk kan vara oerhört stort och uppblåst med bibliotek som aldrig används. Att inkludera för många filer i ett standardbibliotek kan också leda till problem med utvecklingen av språket, eftersom funktioner som sällan används måste uppdateras med varje språk eller kompilatorändring, vilket ökar mängden arbete som krävs för en ny version.
Omvänt kan ett standardbibliotek som har för lite funktionalitet leda till att varje programmerare måste anpassa externa bibliotek och inkludera dem specifikt i programreleaser. Detta kan leda till en typ av sekundär, samhällsstyrd underhåll av en standard som inte kontrolleras av det primära språkutvecklingsteamet. Vissa språk anpassar sig till sådana situationer genom att inkludera vanliga bibliotek i standarduppsättningen när samhället har gjort behovet klart.
Olika språk har olika designfilosofier om vad som ska finnas i standardbiblioteket. Dessutom kan mekaniken bakom hur kompilatorn skapar ett körbart program också bestämma parametrarna för biblioteket. Tolkade språk tenderar att ha en större samling bibliotek i sin standarduppsättning, medan språk på låg nivå ofta har mycket få.