funkcijos
Kompiuterių programavime paprogramė yra programos instrukcijų seka, atliekanti konkrečią užduotį, supakuota kaip vienetas. Šį vienetą galima naudoti programose, kai reikia atlikti konkrečią užduotį. Paprogramės gali būti apibrėžtos programose arba atskirai bibliotekose, kuriomis gali naudotis kelios programos. Įvairiose programavimo kalbose paprogramė gali būti vadinama procedūra, funkcija, rutina, metodu arba paprograme. Kartais vartojamas ir bendrasis terminas iškviečiamasis vienetas. Kaip rodo pavadinimas paprogramė, paprogramė elgiasi panašiai kaip kompiuterio programa, kuri naudojama kaip vienas didesnės programos ar kitos paprogramės etapas. Paprogramė dažnai koduojama taip, kad ją galima paleisti (iškviesti) kelis kartus ir (arba) iš kelių vietų per vieną programos vykdymą, taip pat ir iš kitų paprogramių, o atlikus paprogramės užduotį, ji gali būti nukreipta atgal (grįžti) į kitą instrukciją po iškvietimo. Maurice'as Wilkesas, Davidas Wheeleris ir Stanley Gillas yra laikomi šios koncepcijos, kurią jie pavadino uždara paprograme, išradėjais, priešingai nei atvirąja paprograme arba makru. Paprogramės yra galinga programavimo priemonė, o daugelio programavimo kalbų sintaksė apima jų rašymą ir naudojimą. Protingai naudojant paprogrames (pavyzdžiui, taikant struktūrizuoto programavimo metodą) dažnai gerokai sumažėja didelės programos kūrimo ir priežiūros išlaidos, kartu padidėja jos kokybė ir patikimumas. Paprogramės, dažnai surinktos į bibliotekas, yra svarbus dalijimosi programine įranga ir prekybos ja mechanizmas. Objektinio programavimo disciplina grindžiama objektais ir metodais (kurie yra paprogramės, prijungtos prie šių objektų arba objektų klasių). Kompiliavimo metodu, vadinamu sriegiuotu kodu, vykdytina programa iš esmės yra paprogramių iškvietimų seka.
