Programarea imperativă este o metodă folosită de programatorii de calculatoare. Instrucțiunile care sunt folosite în acest tip de programare dau comenzi computerului pentru acțiunile care urmează să fie urmate. Acesta este opusul programării declarative, care este folosită pentru a spune computerului ce trebuie făcut fără a oferi detalii despre modul în care trebuie întreprinse acțiunile.
Programarea imperativă a fost numită astfel pe baza dispoziției imperative utilizate în limbajele naturale față de limbaje construite, cum ar fi limbajele de programare pentru computere. În timpul comunicării, timpul imperativ este folosit pentru a da o comandă directă cuiva. Aceste comenzi solicită de obicei o anumită acțiune din partea publicului care primește mesajul. Rezultatul comandă – acțiune al dispoziției imperative este același mod în care funcționează acest tip de programare cu computerele.
În unele cazuri, această metodă de programare este denumită și programare procedurală. Programarea procedurală se referă la faptul că acest tip de programare a computerelor oferă proceduri de urmat de către computere, astfel încât un program să poată fi construit și rulat. Procedurile sunt denumite și subrutine sau funcții.
Încă din anii 1950 a fost folosită programarea imperativă. FORTRAN este unul dintre cele mai vechi exemple de limbaj de programare imperativ. Prin dezvoltarea FORTRAN, precum și a versiunilor mai complexe ale acestui tip de programare, programatorii de computere au reușit să creeze programe mult mai complicate în comparație cu ceea ce erau capabili să facă inițial folosind doar codul mașină al computerului la care se lucrează. Aceasta, la rândul său, a permis computerelor să evolueze, astfel încât să poată crea și rula aplicații mult mai avansate.
De-a lungul timpului, limbajele de programare imperative au devenit din ce în ce mai sofisticate. Variabilele, expresiile, funcțiile și subprogramele sunt acum toate o parte a unui program scris folosind programarea imperativă. Limbile moderne le includ pe cele care urmează programarea orientată pe obiecte. Programarea orientată pe obiecte utilizează obiecte pentru a proiecta și a compila programe și aplicații de calculator. Un obiect este orice lucru care poate fi manipulat prin rularea unui program de calculator, care include variabile, funcții, valori și structuri de date.
Programarea declarativă este modul opus de programare față de imperativ. Când programatorii folosesc programarea declarativă, ei descriu ceea ce doresc să se întâmple sau rezultatele dorite ale rulării programului lor. Deși rezultatele sunt date, procesul pentru a ajunge la acele alerte nu este. Faptul că procedurile pas cu pas nu sunt furnizate este diferența cheie între programarea declarativă și programarea imperativă.