Etkinlik odaklı programlama, bir programı çeşitli etkinlikler etrafında yapılandırmak için kullanılan bir paradigmadır. Bu etkinlikler, grafik kullanıcı arabirimlerindeki kullanıcı girişi olaylarını ve web sitelerinden ve diğer çevrimiçi özelliklerden gelen ağ isteklerini içerir.
Grafiksel kullanıcı arayüzleri bulunana kadar çoğu program kullanıcıların klavyeleri üzerinden bir komut girmesini bekledi. Bu arada, program basitçe bekleyecekti. Bununla birlikte, grafiksel arayüzlerin ve pencere paradigmasının oluşturulması, geliştiricileri daha önceki stratejilerini yeniden düşünmeye zorladı. Kullanıcılar hemen hemen her yere tıklayabildiklerinden, programın neredeyse tüm girdiler için okunması gerekir. Ek olarak, bilgiler her zaman aynı şekilde girilmez; olaya dayalı programlama, çok çeşitli girdilerin kullanılmasını kolaylaştırır.
Etkinliğe dayalı programlama, aynı zamanda çevrimiçi kaynaklar için bazı avantajlara sahiptir. Ziyaretçilere statik bir sayfa göndermek yerine, web siteleri bunun yerine etkinliklere göre geri gönderilenleri değiştirebilir. Özellikle JavaScript, olaya dayalı paradigmalar için sıklıkla kullanılır ve kullanımı İnterneti dönüştürdü ve bir takım yaratıcı tasarımlara yol açtı.
Olay odaklı programlama, yeni başlayanlar için diğer programlama paradigmalarına göre çok daha zordur, bu nedenle çoğu öğretim kursu ve kitap ilk başta bunu öğretmekten kaçınır. Bununla birlikte, daha geleneksel programlama teknikleri konusunda beceriler kazandıktan sonra, çoğu öğrenci bunu anlayabilir ve kullanabilir.