Što je standardna knjižnica?

U računalnom programiranju standardna knjižnica je niz funkcija, konstanti i drugih jezičnih definicija koje su uključene kao dio paketa jezgre prevoditelja. Standardna knjižnica omogućuje programeru osnovnu sposobnost stvaranja jednostavnih programa i manipulacije osnovnim podacima. Također pruža mogućnost neke interakcije s operativnim sustavom domaćina tako da obrada informacija ne postane trivijalan zadatak. Sve implementacije danog prevoditelja jezika uključuju standardnu ​​biblioteku i općenito je kompatibilna prema dolje s prethodnim verzijama knjižnice tako da je osnovna jezična funkcionalnost očuvana kako se razvija tijekom vremena.

Knjižnica je, u širem smislu, skup procedura, funkcija, klasa ili drugih elemenata računalnog programa koji su dostupni programeru. Ti su elementi obično grupirani u kategorije koje definiraju njihovu funkcionalnost, kao što su ulaz, izlaz i rukovanje procesima. Neke se knjižnice oslanjaju na ispravan rad drugih knjižnica, koncept koji se naziva ovisnost. Važne varijable, kao što je maksimalna vrijednost cjelobrojnog tipa podataka ili numerička definicija null znaka, mogu se pohraniti u biblioteku. Oni su također obično već kompajlirani dijelovi računalnog koda, koji sprječavaju štetne izmjene i štite vlasnički programski kod.

Standardna knjižnica nastoji uključiti sve osnovne i potrebne značajke koje će za rad na ovaj ili onaj način zahtijevati širok raspon programa. Ovo se mora uskladiti s uključivanjem previše knjižnica. Velika standardna knjižnica znači da bi na nekim jezicima veličina distribucije dovršenog programa mogla biti nevjerojatno velika i napuhana s knjižnicama koje se nikada ne koriste. Uključivanje previše datoteka u standardnu ​​biblioteku također može dovesti do problema s razvojem jezika, jer značajke koje se rijetko koriste moraju se ažurirati sa svakom promjenom jezika ili prevoditelja, povećavajući količinu posla potrebnog za novo izdanje.

Suprotno tome, standardna knjižnica koja ima premalo funkcionalnosti može dovesti do toga da svaki programer mora instalirati vanjske biblioteke i uključiti ih posebno u izdanja programa. To može dovesti do vrste sekundarnog održavanja standarda vođenog zajednicom koje ne kontrolira tim za razvoj primarnog jezika. Neki se jezici prilagođavaju takvim situacijama uključivanjem knjižnica koje se obično koriste u standardni skup kada zajednica jasno pokaže potrebu.

Različiti jezici imaju različite filozofije dizajna o tome što bi trebalo biti u standardnoj knjižnici. Dodatno, mehanika iza načina na koji prevodilac stvara izvršni program također može odrediti parametre za knjižnicu. Interpretirani jezici obično imaju veću zbirku knjižnica u svom standardnom skupu, dok jezici niske razine često imaju vrlo malo.