Stránka 1 z 1

Dotaz na soubory typu DLL

Napsal: 27 srp 2018 21:44
od petr.sadek
Zdravím.

K čemu se používají a k čemu slouží soubory s příponou DLL? Díky, Petr

Re: Dotaz na soubory typu DLL

Napsal: 27 srp 2018 22:17
od mmmartin

Re: Dotaz na soubory typu DLL

Napsal: 09 zář 2018 08:13
od petr.sadek
Děkuji za link. Bohužel je to na mne moc rozsáhlé téma, kterému jako laik vůbec nerozumím. Můžeš mi dát alespoň jeden příklad z praxe o použití DLL? Dík za pochopení.

Re: Dotaz na soubory typu DLL

Napsal: 09 zář 2018 09:27
od faraon
Programy vykonávají mnoho stále stejných opakujících se činností - například nakreslení okna, psaní textu do něj, přehrání zvuku, čtení klávesnice, čtení myši, pořád dokola, dokola, do blba (a protože počítač blb je, víc už nezblbne a nevadí mu to). A aby všechno tohle nemusel mít každý program obsažené v sobě, existují už od padesátých let knihovny (library) těchhle služeb - často jako součást operačního systému, ze kterých si je program může zavolat pokaždé, když je zrovna potřebuje použít.

Při překladu programu se kód napsaný programátorem propojuje (linkuje - pomocí nástroje zvaného linker) s funkcemi různých knihoven. To se může udělat buď staticky - pak je kód z knihoven přímo součástí výsledného programu, nebo dynamicky - program si potřebné knihovny připojí až po spuštění. A odtud pochází název Dynamic-Link Library a zkratka/přípona DLL.

Můžeš to v akci vidět na tomhle videu:
https://www.youtube.com/watch?v=kVQquhmJ7K0

Překladač PROFORT nejdřív ze zdrojového textu programu vytvoří objektový kód, což je vlastně katalog všech částí programu, jak jsou velké, kde se nacházejí, co potřebují - je zapnutý výpis, takže je to docela dlouhé čtení i u tak malého programu jako tahle jednoduchá hra. A teprve potom se dalším programem LINK jednotlivé "objekty" poskládají s potřebnými kousky kódu z knihoven - tady s příponou LIB (ve výpisu na počátku jsou vidět) , a ze všeho dohromady vytvoří výsledný program ve formátu EXE, který jde spustit. Tohle je ukázka statického linkování, protože MS-DOS, nejen co se týče knihoven, uměl úplné hovno. A to i mnohem později než v roce 1984, ze kterého tenhle program pochází.

Dnešní vývojová prostředí už tohle všechno - a ještě mnohem víc - dělají automaticky, dřív si to člověk musel naťukat ručně, a v každé fázi se přesně dozvěděl co se děje a kde se případně stala chyba. Víc práce, ale i víc dostupných informací.