Διαφορά μεταξύ LIB και DLL Διαφορά μεταξύ του

Anonim

LIB vs DLL

Όταν αναπτύσσουμε λογισμικό, μας ρωτάμε συχνά αν θέλουμε να χρησιμοποιήσουμε LIB ή DLLs στις λειτουργίες που περιέχουν. Το LIB είναι μια στατική βιβλιοθήκη όπου οι λειτουργίες και οι διαδικασίες μπορούν να τοποθετηθούν και να καλέσουν καθώς η εφαρμογή καταρτίζεται. Μια βιβλιοθήκη DLL ή δυναμική σύνδεση κάνει την ίδια λειτουργία, αλλά είναι δυναμική με την έννοια ότι η εφαρμογή μπορεί να καλέσει αυτές τις βιβλιοθήκες κατά τη διάρκεια εκτέλεσης και όχι κατά τη διάρκεια της σύνταξης. Αυτό παρουσιάζει μερικά σημαντικά πλεονεκτήματα σε σύγκριση με τη χρήση LIB.

Για αρχάριους, θα έχετε ένα μόνο αρχείο που είναι σημαντικά μεγαλύτερο, καθώς περιέχει όλο τον κώδικα, ενώ θα έχετε πολλά μικρότερα αρχεία όταν χρησιμοποιείτε το αρχείο DLL. Η συμπλήρωση των λειτουργιών και των διαδικασιών σας θα σας επιτρέψει επίσης την επαναχρησιμοποίηση όπως κάποτε είστε ευχαριστημένοι με τις λειτουργίες στο DLL επειδή μπορείτε να το διατηρήσετε όπως συμβαίνει με κάθε έκδοση της εφαρμογής και να μην χρειαστεί να το χρειαστείτε. Μπορείτε επίσης να χρησιμοποιήσετε το ίδιο DLL εάν θέλετε να δημιουργήσετε μια άλλη εφαρμογή που χρησιμοποιεί τις ίδιες λειτουργίες και διαδικασίες. Μπορείτε να συνδέσετε απευθείας το αρχείο DLL αντί να αντιγράψετε τον κώδικα από την πηγή όπως θα χρειαστεί να κάνετε με το LIB.

Ένα πρόβλημα με το DLL είναι όταν αλλάζετε το περιεχόμενο του DLL. Αυτό μπορεί να οδηγήσει σε προβλήματα εκδόσεων όπου μια εφαρμογή χρησιμοποιεί την εσφαλμένη έκδοση του DLL που προκαλεί προβλήματα. Πρέπει να παρακολουθήσετε τα DLL σας για να αποφύγετε αυτά τα προβλήματα. Δεν θα είχατε αυτό το πρόβλημα με το LIB καθώς θα λάβετε μόνο ένα μεγάλο αρχείο.

Κατά την ανάπτυξη του λογισμικού και την επιλογή του DLL, θα έχετε ακόμα ένα αρχείο LIB στο έργο σας. Αλλά σε αντίθεση με τη χρήση του LIB, αυτό το αρχείο δεν περιέχει τον κώδικα των λειτουργιών και των διαδικασιών, αλλά μόνο stubs που το πρόγραμμα χρειάζεται να καλέσει τις διαδικασίες από τα DLL's.

Περίληψη:

1. Ένα DLL είναι μια βιβλιοθήκη που περιέχει λειτουργίες που μπορούν να καλούνται από εφαρμογές κατά τη διάρκεια εκτέλεσης ενώ το LIB είναι μια στατική βιβλιοθήκη του οποίου ο κωδικός πρέπει να καλείται κατά τη διάρκεια της σύνταξης

2. Η χρήση του LIB θα οδηγούσε σε ένα μόνο αρχείο που είναι σημαντικά μεγαλύτερο, ενώ καταλήγετε σε πολλαπλά μικρότερα αρχεία με DLL

3. Τα DLL είναι πιο επαναχρησιμοποιήσιμα από τα LIBs κατά τη σύνταξη νέων εκδόσεων ή εντελώς νέων εφαρμογών

4. Τα αρχεία DLL μπορούν να χρησιμοποιηθούν από άλλες εφαρμογές, ενώ τα αρχεία LIB δεν μπορούν να

5. Τα αρχεία DLL είναι επιρρεπή σε προβλήματα έκδοσης, ενώ το LIB δεν είναι

6. Â Θα εξακολουθούσατε να έχετε ένα αρχείο LIB κατά την ανάπτυξη λογισμικού με DLL, αλλά περιέχει μόνο stubs