Per quanto mi riguarda, l'avere una collezione di pezzi di codice riutilizzabili è il risultato degli anni trascorsi a programmare con Delphi una serie di applicazioni che condividono parecchio di quel codice.
Per fare un esempio, il mio software ZipGenius su Windows crea alcune chiavi di registro in cui salva le impostazioni predefinite post-setup e, successivamente, le impostazioni personalizzate di ciascun utente; i software che lo accompagnano spesso devono poter accedere alle stesse informazioni, anche solo per sapere in quale cartella è installato ZipGenius, pertanto nel codice di questi ho incluso la stessa unit che ho usato anche per il programma principale.
Lo so, non è molto ortodosso e potrebbe apparire un tipo di programmazione un po' rozza e poco elegante, ma la comodità di questo sistema è innegabile: anziché creare una DLL, l'insieme di funzioni viene direttamente integrato nel codice principale del programma che si sta realizzando. In questo modo vengono su applicazioni complete in tempi rapidissimi e avere una grossa porzione del codice già pronta ci permette di concentrarci maggiormente sull'aspetto esteriore del software.