Programėlė yra specialus kompiuterio programos tipas, skirtas veikti tik kitoje programinėje įrangoje. Šis terminas dažniausiai vartojamas programoms, parašytoms Java programavimo kalba, apibūdinti. Šios programos skirtos funkcionalumui ir interaktyvumui suteikti svetainėms, kuriose standartinės hiperteksto žymėjimo kalbos (HTML) nepakanka. Mobilieji įrenginiai, pvz., mobilieji telefonai, taip pat naudoja programėles, bet gali tai padaryti kitaip.
Yra daug skirtumų tarp programėlės ir standartinės kompiuterio programos. Didžiausias skirtumas yra tas, kad programėlę gali paleisti tik kita sistemoje jau esanti programa, dažniausiai interneto naršyklė ar kitas specializuotas vertėjas. Tai suteikia papildomo saugumo ir leidžia programėlėi būti nepriklausoma nuo platformos, nes kalba, kuria ji parašyta, pagal poreikį verčiama kiekvienoje skirtingoje operacinėje sistemoje.
Vienas iš programėlės, o ne programos, pranašumų yra integruotas labai griežtas saugos kontrolė. Standartinė programėlė veikia labai ribotu režimu, kai ji negali tiesiogiai pasiekti jokių sistemos išteklių. Programinė įranga, kurioje veikia programa, gali apriboti prieigą taip, kad ji nežinotų apie sistemą, kurioje ji vykdoma. Be to, yra įvairių tipų programėlių, kurios gali įdiegti pažangius saugos metodus, suteikiančius didesnę prieigą vartotojo nuožiūra.
Žiniatinklio naršyklės dažnai naudoja „Java“ programėles, kad suteiktų vartotojams prieigą prie įvairių tipų internetinės medijos, nereikalaujant įdiegti visiškai atskiros programos. Programėlė taip pat gali būti naudojama, kad būtų lengviau užpildyti internetines formas, dinamiškai rodyti vaizdus arba leisti žaisti žaidimus. Programėlės netgi yra plačiai naudojamos elektroninės prekybos rinkoje, kur jos naudojamos saugiai bendrauti su serveriu perkant.
Naudojant žiniatinklio naršyklę, programėlės gali būti labai pritaikytos, nereikalaujant perrašyti programinės įrangos. Tai daroma naudojant HTML. Kai iškviečiama iš svetainės HTML dokumento, programai galima perduoti kelis skirtingus parametrus tiesiai iš HTML kodo. Šis mechanizmas leidžia lengvai pritaikyti vieną programėlę keliose svetainėse.
Mobilieji įrenginiai naudoja programėles kiek kitaip. Daugelis įrenginių turi vidinę programinės įrangos sistemą, kuri leidžia programėlėms veikti nepriklausomai nuo bet kokios kitos programos. Šis metodas suteikia visą standartinio diegimo saugumą ir perkeliamumą, neperkeliant programos į atskirą programinės įrangos konteinerį.
Nors programėlės yra sukurtos veikti saugioje aplinkoje, kurioje pagrindinė sistema negali būti pažeista, yra būdų, kaip jos gali gauti visišką prieigą prie sistemos. „Java“ programėlės gali būti pasirašytos, tai reiškia, kad jei sistemos vartotojas pasitiki programa, jam bus suteikta prieiga prie pagrindinės sistemos failų ir išteklių. Tokio tipo saugos išimtys visada paragina vartotoją prieš leisdamos prieigą.