Źródło: Arkusze CKE
Która z wymienionych właściwości najlepiej charakteryzuje biblioteki dynamiczne?
Warianty odpowiedzi
-
A
Są ładowane podczas kompilacji
-
B
Są ładowane w trakcie działania aplikacji
-
C
Są statycznie dołączane do pliku wykonywalnego
-
D
Zawierają kod źródłowy aplikacji
Wyjaśnienie
Kluczowa różnica między bibliotekami statycznymi a dynamicznymi sprowadza się do momentu, w którym są one dołączane do Twojego programu.
Biblioteki dynamiczne (takie jak pliki DLL w Windowsie czy pliki SO w Linuksie) nie są scalane z plikiem wykonywalnym podczas kompilacji. Zamiast tego program odwołuje się do nich i ładuje je do pamięci operacyjnej dopiero wtedy, gdy faktycznie działa (w tzw. czasie wykonywania / runtime).
Dzięki takiemu podejściu sam plik aplikacji waży znacznie mniej, a wiele programów może dzielić jedną i tę samą bibliotekę zainstalowaną w systemie.