DLL və LIB Arasındakı Fərq

DLL və LIB Arasındakı Fərq
DLL və LIB Arasındakı Fərq

Video: DLL və LIB Arasındakı Fərq

Video: DLL və LIB Arasındakı Fərq
Video: Maglev Trains and Why They Matter 2024, Noyabr
Anonim

DLL vs LIB

Kitabxana proqramların hazırlanması üçün istifadə oluna bilən resurslar toplusudur. Kitabxana adətən alt proqramlardan, funksiyalardan, siniflərdən, dəyərlərdən və növlərdən ibarətdir. Əlaqələndirmə prosesi zamanı (adətən əlaqələndirici tərəfindən həyata keçirilir) kitabxanalar və icra olunanlar bir-birinə istinad edir. Kitabxana faylları alt proqramların hədəf proqrama yükləndiyi vaxtdan asılı olaraq statik və dinamik kitabxanalara bölünür. Müvafiq olaraq, LIB faylları statik olaraq əlaqəli kitabxanalardır və DLL faylları dinamik olaraq əlaqəli kitabxanalardır.

DLL nədir?

Dinamik Bağlantı Kitabxanası (daha çox DLL kimi tanınır) Microsoft tərəfindən hazırlanmış ortaq kitabxana tətbiqidir. O,.dll,.ocx və ya.drv uzantılarından istifadə edir və onlar Microsoft Windows və OS/2 əməliyyat sistemlərində istifadə olunur..dll adi DLL faylları tərəfindən istifadə olunur. Və.ocx genişləndirilməsi ActiveX nəzarətlərini ehtiva edən kitabxanalar tərəfindən,.drv uzantısı isə köhnə sistem drayver faylları tərəfindən istifadə olunur. DLL fayl formatı Windows EXE faylları ilə eynidir (32-bit/64-bit Windows-da Portativ İcra edilə bilən fayllar və 16-bit Windows-da Yeni İcra oluna bilən). Buna görə də, kodun, məlumatların və resursların istənilən kombinasiyası DLL fayllarında (EXE fayllarında olduğu kimi) ola bilər. Əslində, DLL fayl formatına malik məlumat faylları resurs DLL-ləri adlanır. İkon kitabxanaları (.icl genişləndirilməsi ilə) və şrift faylları (.fon və.fot uzantıları ilə) resurs DLL-lərinə nümunədir.

Bölmələr adlanan komponentlər DLL-i təşkil edir və hər bölmənin yalnız oxuna bilən/yazıla bilən və icra oluna bilən/icra edilə bilməyən kimi öz atributları var. Kod bölmələri icra edilə bilər, məlumat bölmələri isə icra edilə bilməz. Kod bölmələri paylaşılır və məlumat bölmələri şəxsidir. Bu o deməkdir ki, DLL-dən istifadə edən bütün proseslər kodun eyni nüsxəsindən istifadə edəcək, hər bir prosesdə isə məlumatların öz nüsxəsi olacaq. Windows üçün əsas dinamik kitabxana Windows-da əsas funksiyaları (fayl və yaddaşla əlaqəli funksionallıq) ehtiva edən kernel32.dll-dir. COM (Component Object Model) DLL-nin OOP (Obyekt yönümlü Proqramlaşdırma) üçün genişlənməsidir. Adi DLL-lərdən istifadə etmək COM fayllarından daha asandır.

LIB nədir?

LIB faylları statik kitabxanalardır (statik olaraq əlaqəli kitabxanalar kimi də tanınır). LIB faylları alt proqramlar, xarici funksiyalar və dəyişənlər toplusundan ibarətdir. LIB faylları tərtib vaxtında həll olunur (işləmə vaxtından fərqli olaraq). Kod əslində hədəf tətbiqə kopyalanır. Kompilyator, bağlayıcı və ya bağlayıcı bu qətnaməni yerinə yetirəcək və obyekt faylı və icra olunan fayl yaradacaq. Bu proses statik qurma prosesi adlanır.

DLL və LIB arasındakı fərq nədir?

LIB kitabxanaları kompilyasiya zamanı çağırıla bilər, lakin DLL kitabxanaları yalnız işləmə zamanı çağırıla bilər. LIB faylları DLL fayllarından əhəmiyyətli dərəcədə böyükdür. DLL faylları ilə bağlı çox yayılmış problem versiya problemidir. Bu, DLL kodu dəyişdirildikdə və proqram DLL-nin səhv versiyasından istifadə etdikdə baş verir. Bu LIB faylları ilə əlaqəli problem deyil. Yenidən istifadə imkanları baxımından, sistemlərin yeni versiyalarını və ya tamamilə yeni tətbiqləri yazarkən, DLL-lər həmişə LIB-lərdən daha yaxşıdır.

Tövsiyə: