Diferența dintre LIB și DLL Diferența dintre

Anonim

LIB vs DLL

Atunci când dezvoltăm software, suntem adesea întrebați dacă vrem să folosim LIB sau DLL-uri în conținând funcții pentru aplicație. LIB este o bibliotecă statică unde funcțiile și procedurile pot fi plasate și numite în timp ce aplicația este în curs de compilare. O bibliotecă DLL sau Dynamic Link are aceeași funcție, dar este dinamică într-un sens în care aplicația poate suna aceste biblioteci în timpul run-time și nu în timpul compilației. Aceasta prezintă câteva avantaje semnificative în comparație cu utilizarea LIB.

Pentru început, ai avea un singur fișier care este semnificativ mai mare, deoarece conține tot codul, în timp ce ar trebui să aveți mai multe fișiere mai mici atunci când utilizați DLL. Compilarea funcțiilor și a procedurilor vă va permite, de asemenea, o reutilizare mai mare ca și când ați fost mulțumiți de funcțiile de pe DLL, deoarece puteți să o păstrați așa cum este cu fiecare versiune a aplicației și nu trebuie să vă dezamăgiți. De asemenea, puteți utiliza același DLL dacă doriți să creați o altă aplicație care utilizează aceleași funcții și proceduri. Puteți să vă conectați direct la DLL, mai degrabă decât să copiați codul din sursă așa cum ar trebui să faceți cu LIB.

O problemă cu DLL este când modificați conținutul DLL. Acest lucru poate duce la probleme de versiune în cazul în care o aplicație utilizează versiunea incorectă a DLL care cauzează probleme. Trebuie să țineți evidența DLL-urilor pentru a evita aceste probleme. Nu ați avea această problemă cu LIB, deoarece veți obține doar un fișier mare.

Atunci când dezvoltați software-ul și alegeți DLL, veți avea în continuare un fișier LIB în proiectul dvs. Dar, spre deosebire de utilizarea LIB, acest fișier nu conține codul funcțiilor și procedurilor, ci doar stub-urile pe care programul trebuie să le apeleze procedurile din DLL-uri.

Rezumat:

1. Un DLL este o bibliotecă care conține funcții care pot fi numite de aplicații în timpul execuției, în timp ce LIB este o bibliotecă statică a cărei cod trebuie să fie apelat în timpul compilației

2. Folosirea LIB ar duce la un singur fișier considerabil mai mare, în timp ce veți ajunge la mai multe fișiere mai mici cu DLL

3. DLL-urile sunt mai reutilizabile decât LIB-urile atunci când scriu versiuni noi sau aplicații complet noi

4. Fișierele DLL pot fi utilizate de alte aplicații, în timp ce fișierele LIB nu pot fi

5. DLL-urile sunt predispuse la probleme de versiune, în timp ce LIB nu este

6. Â Veți avea încă un fișier LIB atunci când dezvoltați software cu DLL-uri, dar conține doar stubs