Tra i paradigmi per la programmazione di software, la programmazione imperativa è un "classico". I primi linguaggi di programmazione e, di conseguenza, i primi programmi per computer, erano basati interamente su questo approccio classico, che prevede una sequenza regolata di comandi specifici (dal lat. imperare, "comandare") o di istruzioni operative. Tra le altre cose, questo paradigma di programmazione è alla base di pietre miliari come Pascal e C, nonché di tutti i linguaggi assemblativi. Nella programmazione imperativa, l'attenzione si concentra, tra le altre cose, sul lavoro svolto il più vicino possibile al sistema. Il codice del programma risultante è quindi facile da capire, ma anche molto vasto.
Con la programmazione strutturata, procedurale e modulare, al paradigma di programmazione imperativa si associano altri tre importanti approcci di scrittura o strutturazione del codice software.