Programowanie imperatywne to metoda stosowana przez programistów komputerowych. Instrukcje używane w tego typu programowaniu przekazują komputerowi polecenia dotyczące działań, które mają być wykonane. Jest to przeciwieństwo programowania deklaratywnego, które służy do informowania komputera, co należy zrobić, bez podawania szczegółów, w jaki sposób mają zostać podjęte działania.
Programowanie imperatywne zostało tak nazwane na podstawie trybu imperatywnego używanego w językach naturalnych w porównaniu z językami sztucznymi, takimi jak języki programowania komputerowego. Podczas komunikacji czas rozkazujący służy do wydawania komuś bezpośredniego polecenia. Polecenia te zwykle wymagają od odbiorców, którzy otrzymują wiadomość, określonego działania. Polecenie – akcja wynik trybu rozkazującego jest taki sam, jak ten rodzaj programowania działa na komputerach.
W niektórych przypadkach ta metoda programowania jest również określana jako programowanie proceduralne. Programowanie proceduralne odnosi się do faktu, że ten rodzaj programowania komputerowego zapewnia procedury, których komputery mają przestrzegać, aby można było zbudować i uruchomić program. Procedury są również nazywane podprogramami lub funkcjami.
Już od lat 1950. XX wieku stosowano programowanie imperatywne. FORTRAN jest jednym z najwcześniejszych przykładów imperatywnego języka programowania. Rozwijając FORTRAN, a także bardziej złożone wersje tego typu programowania, programiści komputerowi byli w stanie tworzyć znacznie bardziej skomplikowane programy w porównaniu z tym, co początkowo byli w stanie zrobić, używając tylko kodu maszynowego komputera, na którym pracowali. To z kolei pozwoliło komputerom ewoluować, dzięki czemu są w stanie tworzyć i uruchamiać znacznie bardziej zaawansowane aplikacje.
Z biegiem czasu imperatywne języki programowania stają się coraz bardziej wyrafinowane. Zmienne, wyrażenia, funkcje i podprogramy są teraz częścią programu napisanego przy użyciu programowania imperatywnego. Współczesne języki obejmują te, które podążają za programowaniem obiektowym. Programowanie obiektowe wykorzystuje obiekty do projektowania i kompilowania programów komputerowych i aplikacji. Obiektem jest wszystko, czym można manipulować, uruchamiając program komputerowy, który obejmuje zmienne, funkcje, wartości i struktury danych.
Programowanie deklaratywne jest przeciwieństwem programowania imperatywnego. Kiedy programiści używają programowania deklaratywnego, opisują to, co chcą, aby się wydarzyło lub pożądane rezultaty uruchomienia ich programu. Chociaż podane są wyniki, proces uzyskiwania tych ostrzeżeń nie jest. Fakt, że nie podano procedur krok po kroku, jest kluczową różnicą między programowaniem deklaratywnym a programowaniem imperatywnym.