Библиотека (рачунарство)
From Wikipedia, the free encyclopedia
У рачунарству, библиотека представља колекцију непроменљивих ресурса коју користе програмски језици, нпр. за развој софтвера. Библиотеке могу да садрже податке за подешавање, документацију, помоћне податке, поруке у шаблонима, старе кодове и потпрограме, класе, вредности или типске спецификације. У IBM-овом 360/оперативном систему и његовим млађим верзијама, библиотеке су одређене као одвојене групе података.
У рачунарству, библиотека представља скуп извршавања различитих понашања, написаних у оквиру програмских језика. Када кажемо "понашање" мислимо на добро дефинисан приступ уз помоћ којег се уводи понашање. Ово значи да док год развијенији програми користе библиотеку за прављење системских позива, није потребно поново писати исте системске позиве више пута. Поред тога, понашање омогућава поновну употребу од стране више независних програма. Програм уводи библиотеком осигурано понашање преко механизма датог програма. На пример, у једноставном императивном програмском језику као што је C, понашање у библиотеци се позива коришћењем C-ове функције позивања. Оно што разликује позив у библиотеци од других функција истог програма, јесте начин на који је код организован у систему.
Код библиотеке је организован на такав начин да се може користити од стране више различитих програма који немају никакве везе један са другим, док је код део програма организован тако да се може користити само од стране једног програма. Ова разлика може довести до хијерархијске нотације када програм брзо расте, као што је случај са програмом који јесачињен од више милиона линија кода. У овом случају, постоје библиотеке које се поново користе од стране мањих независних делова великог програма. Издвајајућа карактеристика је та да је библиотека оргранизована за потребе које се могу поново користити од стране независних програма или потпрограма. Корисник једино мора да зна приступ, али не и унутрашње детаље библиотеке.
Циљ библиотеке је да омогући поновно коришћење понашања. Када програм позове библиотеку, он придобија понашање те библиотеке, тако да нема потребе да програм сам уводи понашање. Библиотеке омогућавају поделу кода у модуларној форми и лаку дистрибуцију кода.
Понашање које је имплементирано од стране библиотеке, може бити повезано са позивајућим програмом на различитим фазама програма. Ако се коду библиотеке приступа током прављења позивајућег програма, онда се библиотека назива - статична библиотека. Алтернатива је да се направи извршавање позивајућег програма и да се оно дистрибуира одвојено од библиотеке. Понашање библиотеке је повезано након извршавања као део почетног процеса извршавања, или на половини извршавања. У овом случају библиотека се назива - динамична библиотека. Динамична библиотека се може учитати и линковати као део припремања програма за извршавање уз помоћ линкера. У другом случају, на половини извршавања, апликација може затражити учитавање траженог модула.
Већина преведених програмских језика има стандардну библиотеку, иако програмери такође могу да креирају њихове сопствене библиотеке. Већина модерних софтверских система прави библиотеке које дозвољавају већину системских услуга. Такве библиотеке имају модификоване услуге које траже модерне апликације. Већина кодова коришћених од стране модерне апликације је направљено у таквим системима библиотека.