Forskel mellem LIB og DLL Forskel mellem

Anonim

LIB vs DLL

Ved udvikling af software bliver vi ofte spurgt, om vi vil bruge LIB eller DLL'er til at indeholde funktioner til applikationen. LIB er et statisk bibliotek, hvor funktioner og procedurer kan placeres og kaldes, når applikationen bliver udarbejdet. Et DLL- eller Dynamic Link Library har samme funktion, men er dynamisk på en måde, at applikationen kan kalde disse biblioteker i løbet af run-time og ikke under kompileringen. Dette giver nogle få væsentlige fordele i forhold til anvendelse af LIB.

For det første ville du have en enkelt fil, der er betydeligt større, da den indeholder hele koden, mens du vil have flere mindre filer, når du bruger DLL. Kompilering af dine funktioner og procedurer vil også give dig mere genanvendelighed, som når du er tilfreds med funktionerne på DLL'en, fordi du kan beholde det som det er med hver version af programmet og ikke behøver at røre med det. Du kan også bruge den samme DLL, hvis du vil oprette et andet program, der bruger de samme funktioner og procedurer. Du kan direkte linke til DLL'en i stedet for at kopiere koden fra kilden, som du ville have brug for med LIB.

Et problem med DLL er, når du ændrer indholdet af DLL'en. Dette kan føre til versionsproblemer, hvor et program bruger den forkerte version af DLL'en, der forårsager problemer. Du skal holde styr på dine DLL'er for at undgå disse problemer. Du ville ikke have dette problem med LIB, da du kun ville få en stor fil.

Når du udvikler softwaren og vælger DLL, vil du stadig have en LIB-fil i dit projekt. Men i modsætning til når du bruger LIB, indeholder denne fil ikke koden for funktionerne og procedurerne, men kun stubs, at programmet skal kalde procedurerne fra DLL'erne.

Sammendrag:

1. En DLL er et bibliotek, der indeholder funktioner, der kan kaldes af applikationer i løbetid, mens LIB er et statisk bibliotek, hvis kode skal kaldes under kompileringen

2. Brug af LIB ville resultere i en enkelt fil, der er betydeligt større, mens du ender med flere mindre filer med DLL's

3. DLL'er er mere genanvendelige end LIB'er, når der skrives nye versioner eller helt nye applikationer

4. DLL-filer kan bruges af andre programmer, mens LIB-filer ikke kan

5. DLL'er er tilbøjelige til versionsproblemer, mens LIB ikke er

6. Â Du vil stadig have en LIB-fil, når du udvikler software med DLL'er, men det indeholder kun stubs