Kas yra standartinė biblioteka?

Kompiuterių programavime standartinė biblioteka yra funkcijų, konstantų ir kitų kalbos apibrėžimų, įtrauktų į pagrindinio kompiliatoriaus paketo dalis, serija. Standartinė biblioteka suteikia programuotojui pagrindinę galimybę kurti paprastas programas ir manipuliuoti pagrindiniais duomenimis. Tai taip pat suteikia galimybę kažkaip sąveikauti su pagrindine operacine sistema, kad informacijos apdorojimas netaptų nereikšminga užduotimi. Visi tam tikros kalbos kompiliatoriaus diegimai apima standartinę biblioteką ir paprastai yra suderinama su ankstesnėmis bibliotekos versijomis, todėl pagrindinės kalbos funkcijos išsaugomos laikui bėgant.

Biblioteka plačiąja prasme – tai programuotojui prieinamų procedūrų, funkcijų, klasių ar kitų kompiuterio programos elementų rinkinys. Šie elementai paprastai sugrupuojami į kategorijas, kurios apibrėžia jų funkcionalumą, pvz., įvesties, išvesties ir proceso tvarkymą. Kai kurios bibliotekos priklauso nuo kitų bibliotekų, kad jos tinkamai veiktų. Ši sąvoka vadinama priklausomybe. Bibliotekoje gali būti saugomi svarbūs kintamieji, pvz., didžiausia sveikojo skaičiaus duomenų tipo reikšmė arba skaitinis nulinio simbolio apibrėžimas. Jie taip pat paprastai jau yra sukompiliuoti kompiuterinio kodo dalys, užkertančios kelią žalingiems pakeitimams ir apsaugančios patentuotą programavimo kodą.

Į standartinę biblioteką stengiamasi įtraukti visas pagrindines ir būtinas funkcijas, kurių vienaip ar kitaip reikės paleisti įvairioms programoms. Tai turi būti suderinta su per daugybe bibliotekų. Didelė standartinė biblioteka reiškia, kad kai kuriomis kalbomis baigtos programos platinimo dydis gali būti neįtikėtinai didelis ir išpūstas niekada nenaudojamų bibliotekų. Į standartinę biblioteką įtraukus per daug failų, taip pat gali kilti problemų kuriant kalbą, nes retai naudojamos funkcijos turi būti atnaujinamos su kiekvienu kalbos ar kompiliatoriaus pakeitimu, o tai padidina darbo, reikalingo naujai versijai, kiekį.

Ir atvirkščiai, dėl standartinės bibliotekos, kuri turi per mažai funkcijų, kiekvienas programuotojas turi įdiegti išorines bibliotekas ir įtraukti jas į programos leidimus. Tai gali sukelti antrinį, bendruomenės skatinamą standarto palaikymą, kurio nekontroliuoja pagrindinė kalbos kūrimo komanda. Kai kurios kalbos prisitaiko prie tokių situacijų, įtraukdamos dažniausiai naudojamas bibliotekas į standartų rinkinį, kai bendruomenė aiškiai parodo poreikį.

Skirtingos kalbos turi skirtingą dizaino filosofiją apie tai, kas turėtų būti standartinėje bibliotekoje. Be to, mechanika, pagal kurią kompiliatorius sukuria vykdomąją programą, taip pat gali nustatyti bibliotekos parametrus. Vertinamų kalbų standartiniame rinkinyje paprastai yra daugiau bibliotekų, o žemo lygio kalbų dažnai jų yra labai mažai.