La programmazione basata su eventi è un paradigma utilizzato per strutturare un programma attorno a vari eventi. Questi eventi includono eventi di input dell'utente in interfacce utente grafiche e richieste di networking da siti Web e altre proprietà online.
Fino all'invenzione delle interfacce utente grafiche, la maggior parte dei programmi aspettava semplicemente che gli utenti inserissero un comando attraverso la loro tastiera. Nel frattempo, il programma avrebbe semplicemente aspettato. La creazione di interfacce grafiche e il paradigma di Windows, tuttavia, costrinsero gli sviluppatori a ripensare le loro strategie precedenti. Poiché gli utenti possono fare clic praticamente ovunque, il programma deve essere letto praticamente per qualsiasi input. Inoltre, le informazioni non vengono sempre inserite nello stesso modo; la programmazione basata sugli eventi facilita la gestione di una vasta gamma di input.
La programmazione basata su eventi presenta anche alcuni vantaggi per le risorse online. Invece di inviare una pagina statica ai visitatori, i siti Web possono invece modificare ciò che viene restituito in base agli eventi. JavaScript, in particolare, viene spesso utilizzato per i paradigmi basati sugli eventi e il suo utilizzo ha trasformato Internet e portato a numerosi progetti creativi.
La programmazione basata sugli eventi è significativamente più difficile per i principianti rispetto ad altri paradigmi di programmazione, quindi la maggior parte dei corsi e dei libri didattici evita di insegnarla all'inizio. Dopo aver acquisito abilità in tecniche di programmazione più tradizionali, tuttavia, la maggior parte degli studenti è in grado di comprenderlo e utilizzarlo.