In informatica, una funzione (detta anche subroutine, routine, procedura o sottoprogramma) è un costrutto che permette di raggruppare una sequenza di istruzioni in un unico blocco di istruzioni che fanno parte di un programma espletando così una determinata operazione/elaborazione sui dati del programma stesso (a partire da determinati input restituisce determinati output).