Imperativno programiranje je metoda koju koriste računalni programeri. Izrazi koji se koriste u ovoj vrsti programiranja daju naredbe računalu za radnje koje treba slijediti. Ovo je suprotno od deklarativnog programiranja, koje se koristi da kaže računalu što treba učiniti bez davanja pojedinosti o tome kako se radnje trebaju poduzeti.
Imperativno programiranje je tako nazvano na temelju imperativnog raspoloženja koji se koristi u prirodnim jezicima u odnosu na konstruirane jezike, kao što su računalni programski jezici. Tijekom komunikacije, imperativ se koristi za davanje izravne naredbe nekome. Ove naredbe obično zahtijevaju određenu radnju od publike koja prima poruku. Rezultat naredbe – radnje imperativnog raspoloženja je isti način na koji ova vrsta programiranja radi s računalima.
U nekim slučajevima, ova metoda programiranja se također naziva proceduralnim programiranjem. Proceduralno programiranje odnosi se na činjenicu da ova vrsta računalnog programiranja osigurava postupke koje računala moraju slijediti kako bi se program mogao izgraditi i pokrenuti. Postupci se također nazivaju potprogramima ili funkcijama.
Još od 1950-ih koristi se imperativno programiranje. FORTRAN je jedan od najranijih primjera imperativnog programskog jezika. Razvojem FORTRANA, kao i složenijih verzija ove vrste programiranja, računalni programeri su mogli stvoriti mnogo složenije programe u usporedbi s onim što su u početku mogli raditi koristeći samo strojni kod računala na kojem se radilo. To je zauzvrat omogućilo računalima da se razvijaju tako da mogu stvarati i pokretati mnogo naprednije aplikacije.
S vremenom su imperativni programski jezici postajali sve sofisticiraniji. Varijable, izrazi, funkcije i potprogrami sada su dio programa napisanog korištenjem imperativnog programiranja. Moderni jezici uključuju one koji slijede objektno orijentirano programiranje. Objektno orijentirano programiranje koristi objekte za dizajn i kompiliranje računalnih programa i aplikacija. Objekt je sve čime se može manipulirati pokretanjem računalnog programa, koji uključuje varijable, funkcije, vrijednosti i strukture podataka.
Deklarativno programiranje je suprotan način programiranja od imperativnog. Kada računalni programeri koriste deklarativno programiranje, oni opisuju ono što žele da se dogodi ili željene rezultate izvođenja svog programa. Iako su rezultati dati, proces za postizanje tih upozorenja nije. Činjenica da postupci korak po korak nisu navedeni ključna je razlika između deklarativnog i imperativnog programiranja.