Differenza tra LIB e DLL Differenza tra
LIB vs DLL
Quando si sviluppa software, ci viene spesso chiesto se vogliamo usare LIB o DLL nel contenere le funzioni per l'applicazione. LIB è una libreria statica in cui funzioni e procedure possono essere posizionate e chiamate mentre l'applicazione viene compilata. Una libreria DLL o Dynamic Link fa la stessa funzione ma è dinamica nel senso che l'applicazione può chiamare queste librerie durante l'esecuzione e non durante la compilazione. Questo presenta alcuni vantaggi significativi rispetto all'utilizzo di LIB.
Per i principianti, avresti un singolo file che è significativamente più grande in quanto contiene tutto il codice mentre avresti più file più piccoli quando usi la DLL. La compilazione di funzioni e procedure consente inoltre una maggiore riutilizzabilità come una volta che si è soddisfatti delle funzioni della DLL, poiché è possibile mantenerla come è con ogni versione dell'applicazione e non doverla confondere con essa. È anche possibile utilizzare la stessa DLL se si desidera creare un'altra applicazione che utilizza le stesse funzioni e procedure. È possibile collegare direttamente alla DLL piuttosto che copiare il codice dall'origine come si farebbe con LIB.
Un problema con la DLL è quando si modifica il contenuto della DLL. Ciò può portare a problemi di versione in cui un'applicazione utilizza la versione errata della DLL che causa problemi. È necessario tenere traccia delle DLL per evitare questi problemi. Non avresti questo problema con LIB poichè otterresti solo un file di grandi dimensioni.
Quando si sviluppa il software e si sceglie DLL, si avrà comunque un file LIB nel progetto. Ma a differenza di quando si usa LIB, questo file non contiene il codice delle funzioni e delle procedure ma solo gli stub che il programma deve chiamare le procedure dalle DLL.
Riepilogo:
1. Una DLL è una libreria che contiene funzioni che possono essere richiamate dalle applicazioni in fase di esecuzione mentre LIB è una libreria statica il cui codice deve essere chiamato durante la compilazione
2. Utilizzando LIB risulterebbe in un singolo file che è considerevolmente più grande mentre si finisce con più file più piccoli con la DLL
3. Le DLL sono più riutilizzabili di LIBs quando si scrivono nuove versioni o totalmente nuove applicazioni
4. I file DLL possono essere utilizzati da altre applicazioni mentre i file LIB non possono
5. Le DLL sono soggette a problemi di versione mentre LIB non è
6. Â Avresti comunque un file LIB quando sviluppi software con DLL ma contiene solo stub