Arvutiprogrammeerimise alamprogramm on suurema koodimooduli väiksem osa, millel on oma sisemised toimingud, mis on loodud kogu programmi teenindamiseks. Alamprogrammi nimetatakse mõnikord funktsiooniks või meetodiks, kuna see tagastab konkreetse kooditulemuse, mida programm kasutab. Funktsionaalne programmeerimine pakub mitmekülgset koodi, mis on jagatud tükkideks. Seejärel valivad programmeerijad sündmused, mis käivitavad funktsioonid, mis “juhivad” kasutaja kogemust.
Erinevad arvutikeeled kasutavad alamprogrammi funktsioone erineval viisil. Mõned arvutiprogrammeerimiskeeled kasutavad virnamudelit, kus funktsioonid või alamprogrammid on paigutatud lineaarsesse vormingusse ja neid kasutatakse vastavalt nende vahetule asjakohasusele. Teised keeled kasutavad funktsioonide eraldamiseks ja üksteisest eristamiseks jaotatud vorminguid.
Alamprogrammi õige kasutamine on osa sellest, mida programmeerija õpib, kui ta otsib viise, kuidas hoida arvutikoodi juurdepääsetavana. Kriitilised strateegiad, nagu alamprogrammi tõhus kasutamine, käivad koos teiste üldisemate strateegiatega, nagu näiteks tühiku kasutamine koodis või programmi muutmise juhiste jätmine koos kommentaaridega. Arvutikoodi õige paigutus muudab teiste programmeerijate ja inseneride jaoks palju lihtsamaks selle “lugemise” ja programmis toimuva mõistmise.
Kogu alamprogrammidest ja muudest koodimoodulitest koosnev kood tehakse sageli käivitatavaks programmiks. Programmi käivitatava faili kutsumine on seotud programmi käivitamise või “käitamise” ideega. Paljudel juhtudel koosneb käivitatav programm lihtsalt alamprogrammide kogumist. Kui keegi programmi “käitab”, alustab arvuti algse koodireaga ja seejärel suunatakse programmi kirjutatud juhiste abil teistele järjestikustele koodiridadele.
Teine alamprogrammide peamine eelis on programmi silumise ülesanne. Kui programmiga on probleeme, saavad insenerid koodi sisse minna ja koodiridu järjestikku läbi vaadata, et näha, kust probleem alguse sai. Alamprogrammide abil saavad programmeerijad vaadata iga koodiosa eraldi ja “tühjendada” veavabad osad, et keskenduda vigade esinemiskohale.
Alamprogrammi kasutamine on arvutiprogrammeerimise õppimise lahutamatu osa. Alamprogrammid on sageli osa akadeemilistest informaatikatundidest. Programmeerijad õpivad neid oskusi koolis või välitingimustes, et luua parema üldise funktsionaalsusega ja läbipaistvamaid programme.