What Is Event-Driven Programming?

Event-driven programming is a paradigm used to structure a program around various events. These events include user input events in graphical user interfaces and networking requests from websites and other online properties.

Until the invention of graphical user interfaces, most programs simply waited for users to enter a command through their keyboard. In the meantime, the program would simply wait. The creation of graphical interfaces and the windows paradigm, however, forced developers to rethink their earlier strategies. Because users can click virtually anywhere, the program must be read for nearly any input. In addition, information isn't always entered in the same manner; event-driven programming makes it easier to handle a diverse range of inputs.

Event-driven programming also has some advantages for online resources. Instead of sending a static page to visitors, websites can instead change what is returned based on events. JavaScript, in particular, is often used for event-driven paradigms, and its use has transformed the Internet and led to a number of creative designs.

Event-driven programming is significantly harder for beginners than other programming paradigms, so most instructional courses and books avoid teaching it at first. After gaining skills in more traditional programming techniques, however, most students are able to understand and use it.