Co to jest biblioteka dynamiczna?
Biblioteka dynamiczna to biblioteka programistyczna, która nie jest trwale włączana do pliku wykonywalnego podczas budowania programu. Zamiast tego jest ładowana podczas uruchamiania aplikacji albo dopiero w trakcie jej działania.
Biblioteki dynamiczne pozwalają wielu programom korzystać z tego samego kodu bez kopiowania go do każdego pliku wykonywalnego.
Cechy biblioteki dynamicznej
- jest osobnym plikiem poza aplikacją,
- może być współdzielona przez wiele programów,
- zmniejsza rozmiar pliku wykonywalnego,
- musi być dostępna w systemie w czasie uruchamiania programu,
- można ją zaktualizować bez ponownej kompilacji aplikacji, o ile zachowana jest zgodność interfejsu.
Typowe rozszerzenia
- Windows:
.dll - Linux:
.so - macOS:
.dylib
Różnica względem biblioteki statycznej
Biblioteka statyczna jest dołączana do programu podczas budowania. Biblioteka dynamiczna pozostaje osobnym plikiem i jest ładowana dopiero wtedy, gdy program jej potrzebuje.
Przykład
Program graficzny może korzystać z dynamicznej biblioteki do obsługi formatów obrazów. Jeśli biblioteka zostanie poprawiona, program może używać nowszej wersji bez pełnej przebudowy, pod warunkiem że nowa wersja jest kompatybilna.
Do egzaminu: dynamiczna = osobny plik ładowany podczas działania lub startu programu.