Diferența dintre LIB și DLL

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, ați avea un singur fișier care este semnificativ mai mare, deoarece conține întregul cod în timp ce ați avea 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 primi doar un fișier mare.

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 pietrele pe care programul trebuie să le apeleze procedurile din DLL.

Rezumat:
1. O DLL este o bibliotecă care conține funcții care pot fi numite de aplicații la timpul de execuție, în timp ce LIB este o bibliotecă statică al cărei cod trebuie să fie apelat în timpul compilației
2. Utilizarea LIB ar duce la un singur fișier care este considerabil mai mare în timp ce veți ajunge cu mai multe fișiere mai mici cu DLL-uri
DLL-urile sunt mai reutilizabile decât LIB-urile când se 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
5. DLL-urile sunt predispuse la probleme de versiune în timp ce LIB nu este
6.Ați avea încă un fișier LIB atunci când dezvoltați software cu DLL-uri, dar conține numai stubs