Könyvtár (programozás)

Könyvtár (az angol  könyvtárból ) a programozásban  - szoftver (szoftver) fejlesztésére használt szubrutinok vagy objektumok gyűjteménye. Az operációs rendszer (OS) és az alkalmazásszoftver szempontjából a könyvtárakat dinamikusra és statikusra osztják.

A "szubrutinok könyvtára" kifejezést Wilks M. , Wheeler D. , Gill S. az elsők között említette a számítások számítógépen történő rendszerezésének egyik formájaként [1] [2] . A könyvükben elmondottak alapján a könyvtárat "egyedi, gyakran előforduló (standard) számítási műveletekhez szükséges rövid, előre elkészített programok" összességeként értelmezték [3] .

Könyvtárak a lefordított nyelvekhez

Dinamikus könyvtárak

A dinamikus könyvtár olyan fájl, amely gépi kódot tartalmaz . Az operációs rendszer programbetöltője tölti be a folyamatmemóriába a folyamat létrehozásakor vagy egy már futó folyamat kérésére , azaz dinamikusan. [négy]

Dinamikus könyvtárak fájlnév -kiterjesztései különböző operációs rendszerekben
Kiterjesztés OS Dekódolás jegyzet
so UNIX angol  s tárgyról megosztott _
dylib Mac operációs rendszer angol  dy namic könyvtár _
library Amiga OS A Libs logikai kötetben tárolva:
dll Microsoft Windows OS/ 2 angol  d ynamic l ink l ibrary

A céltól függően vannak:

Egy program írásakor elég, ha a programozó megadja a fordítónak ( fordítónak vagy értelmezőnek ) a könyvtár elérési útját és a függvény nevét . Sem a függvény forrásszövege, sem a végrehajtható kódja nem kerül bele a programba.

Előnyök:

Hibák:

Statikus könyvtárak

A statikus könyvtár egy fájl formájú objektumfájl (gyakran a forráskóddal együtt szállítható), amelyből a kódot szelektíven vagy teljesen beillesztjük a programba a hivatkozási szakaszban.

A forráskódként terjesztett könyvtárakat a fordító objektumfájlokká konvertálja . A linker [6] ezután egyetlen végrehajtható fájlba egyesíti a könyvtárobjektum fájlokat és a program objektumfájljait.

Például a forrásban a következő szövegeket terjesztik:

Az objektumfájlként terjesztett könyvtárak készen állnak a csatolásra. A linker összekapcsolja a programkönyvtárak és a program objektumfájljait a végrehajtható fájl létrehozása során.

Statikus könyvtárak objektumfájl- kiterjesztései különböző operációs rendszerekben .

Kiterjesztés OS
" a" UNIX
" lib" Microsoft Windows

Számos lefordított programozási nyelv ( Fortran , Pascal , C , C++ és mások) szabványos könyvtárait objektumfájlokként terjesztik.

Előnyök:

Hibák:

Könyvtárak tolmácsolt nyelvekhez

A könyvtár egy olyan fájl, amely vagy egy értelmezett nyelvű kódot vagy egy virtuális gép bájtkódját tartalmazza .

Például a Python nyelv könyvtárai forráskóddal (“ py”) vagy [7] bájtkóddal rendelkező fájlokként terjeszthetők (a „ ” kiterjesztés pyc, a „c” betű angol  fordítása ). A Python nyelv egyik könyvtára a Tkinter . [nyolc]

Lásd még

Jegyzetek

  1. Wilkes MV, Wheeler DJ, Gill S. Programok készítése elektronikus digitális számítógéphez. - Addison-Wesley, 1951.
  2. Wilks M., Wheeler D., Gill S. "Programozás elektronikus számológépekhez." Külföldi Irodalmi Kiadó, 1953
  3. Volchenskova, Nadezhda Ivanovna, A számítási matematikai szubrutinok könyvtárainak többgépes megvalósításának technológiája és életfenntartása Fortran nyelven, a disszertáció kivonata, 1984 . Letöltve: 2012. október 9. Az eredetiből archiválva : 2012. május 3..
  4. Saveljev A.M. A TRANLIB DINAMIKUS KÖNYVTÁR ALKALMAZÁSA REAGÁLÓ GÁZKEVERÉKEK SZÁLLÍTÁSI TULAJDONSÁGÁNAK KISZÁMÍTÁSÁHOZ  (rus.)  // "Aircraft Engines" folyóirat. — 2019.
  5. Robert Elder. Az interfészek a szoftverfejlesztés alapvető fogalmai . — 2020. Archiválva : 2021. március 6.
  6. jsmanifest. Linker JavaScriptben . — 2020. Archiválva : 2020. szeptember 11.
  7. Python fájlok fordítása Archiválva : 2021. február 6. a Wayback Machine -nél . Python dokumentáció a docs.python.org webhelyen.
  8. BUKHAROV T.A., NAFIKOVA A.R., MIGRANOVA E.A. A PYTHON programozási nyelv és könyvtárainak áttekintése  (orosz)  // COLLOQUIUM-JOURNAL. — 2019.

Irodalom