La teoria della programmazione della pasta è l'idea che varie strutture di programmazione possano essere paragonate alle strutture di noti piatti di pasta. Il primo e più famoso esempio della teoria è il codice spaghetti, che illustra la sfortunata tendenza della programmazione procedurale non strutturata a produrre codice con poca o nessuna struttura, rendendo difficile la comprensione e l'aggiornamento.
Al contrario, si dice che il codice delle lasagne assomigli alla programmazione strutturata, che ha una struttura a strati facilmente comprensibile. Tuttavia, a causa di interdipendenze imprevedibili tra moduli o unità di codice, il programma potrebbe essere difficile da modificare. E il codice dei ravioli è analogo alla programmazione orientata agli oggetti (OOP), perché è costituito da oggetti piccoli, separati e liberamente accoppiati che possono essere modificati individualmente senza influire sugli altri componenti o sulla struttura nel suo insieme.
La teoria della programmazione di Pasta è attribuita a Raymond Rubey di SofTech Inc. In una lettera del 1992 all'editore della rivista CrossTalk, Rubey esortava gli sviluppatori a "andare oltre la condanna del codice degli spaghetti all'incoraggiamento attivo del codice dei ravioli".