Grazie per A2A.
Una libreria è un insieme di codice precedentemente scritto, che può essere richiamato quando si costruisce il proprio codice. È un lavoro che è stato fatto in precedenza da qualcun altro e che ora puoi usare, senza doverlo fare tu stesso. E potete farne uso nel vostro codice, legalmente, poiché è stato scritto per essere usato da altri. Ora, librerie diverse avranno diverse restrizioni sul fair use, ma questo era codice che non era stato progettato per stare da solo, ma per essere usato nel codice di qualcun altro.
Davor Lozic dà buoni esempi per il linguaggio C, e una buona spiegazione delle librerie statiche e dinamiche, a cui aggiungerei che le librerie dinamiche possono spesso essere aggiornate senza aggiornare il vostro codice. Un esempio che vedrete spesso è il modo in cui i programmi cambiano il modo in cui vi presentano un menu di apertura dei file quando aggiornate il vostro sistema operativo. In questo caso una libreria dinamica è stata cambiata sotto il programma, e ora i programmi sembreranno cambiati, mentre non lo sono.
C++ ha anche una libreria standard. La maggior parte dei linguaggi hanno librerie, ma per alcuni hanno nomi diversi, come i pacchetti in java, che sono concettualmente la stessa cosa delle librerie, ma con convenzioni di denominazione imposte (namespace) che lavorano per assicurare che non ci siano casi accidentali di librerie diverse che usano lo stesso nome.
La maggior parte dei progetti basati sul software otterrà capacità molto complicate semplicemente acquistando una libreria off-the-shelf e lavorando con essa, senza dover fare tutto il lavoro da soli.