La descrizione del processo risolutivo può risultare molto diversa in base al paradigma di programmazione scelto.
La descrizione dei dati e delle azioni per risolvere il problema dipende dal paradigma di programmazione utilizzato e, per linguaggi che usano lo stesso paradigma, almeno parzialmente dal linguaggio scelto, infatti potrebbero essere disponibili per esempio tipi o strutture di dati diverse.
Ci sono però alcuni concetti comuni a tutti i paradigmi, per esempio i concetti fondamentali della descrizione dei dati.
Molti concetti del paradigma imperativo si applicano anche alla programmazione a oggetti per quanto riguarda le interazioni (cioè la scrittura dei metodi degli oggetti).
Per questi paradigmi sono fondamentali le istruzioni di assegnazione e le strutture di controllo.