DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Please enter at least three characters to search
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Zones

Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks

The software you build is only as secure as the code that powers it. Learn how malicious code creeps into your software supply chain.

Apache Cassandra combines the benefits of major NoSQL databases to support data management needs not covered by traditional RDBMS vendors.

Generative AI has transformed nearly every industry. How can you leverage GenAI to improve your productivity and efficiency?

Modernize your data layer. Learn how to design cloud-native database architectures to meet the evolving demands of AI and GenAI workloads.

Related

  • Docker Image Building Best Practices
  • Dynatrace Perform: Day Two
  • Non-blocking Database Migrations
  • How API Management Can Ease Your Enterprise Cloud Migration

Trending

  • Exploring Intercooler.js: Simplify AJAX With HTML Attributes
  • Secrets Sprawl and AI: Why Your Non-Human Identities Need Attention Before You Deploy That LLM
  • Accelerating Debugging in Integration Testing: An Efficient Search-Based Workflow for Impact Localization
  • Cloud Security and Privacy: Best Practices to Mitigate the Risks

What Is Event-Driven Programming And Why Is It So Popular?

Take a look at arguably the most popular design paradigm in software development, and learn a little more about what makes it so widespread.

By 
Annika Helendi user avatar
Annika Helendi
·
Sep. 05, 18 · Analysis
Likes (3)
Comment
Save
Tweet
Share
64.4K Views

Join the DZone community and get the full member experience.

Join For Free

Event-driven programming is currently the default paradigm in software engineering. As the name suggests, it uses events as the basis for developing the software. These events can be something the users are doing — clicking on a specific button, picking an option from drop-down, typing text into a field, giving voice commands, or uploading a video — or system-generated events such as a program loading.

The central idea of event-driven programming is that the application is designed to react.

Why Is It So Popular Right Now?

On the business development side, keeping the user engaged with your program is one clear way of making sure your app is actively used and offers value, so it makes sense to build your applications with this focus in mind.

Event-driven programming serves the user with the quickest and most accurate responses and this usually translates into better user experience and business gains. Also, the whole focus of software development is on the actual people using the app and their actions, so it will produce better and more intuitive products for the end-users.

The opposite of event-driven programming would be software that doesn’t need any user input to act. There are definitely valid use cases for this as well but the majority of popular applications on the market right now function through user input (all the social media platforms, games, productivity tools, etc).

Needless to say, GUI (graphical user interface) applications can experience the biggest benefits of using this approach.

One of the big benefits of event-driven programming is that it’s very intuitive, flexible and naturally well-suited to applications whose control flow are based, not on its structure, but rather on internal or external events.

What’s the Best Programming Language for This Approach?

Because event-driven programming is an approach rather than a type of programming language, it can be practiced with any programming language.

What Are the Disadvantages?

Since it offers the most value for GUI applications, some other use cases might not benefit from it.

Some critics are also saying that event-driven programming is complex to master and not worth the trouble when your application is very simple and small.

What’s the Next Big Thing?

The next big paradigm shift definitely comes with serverless computing — it’s another level of abstraction that makes creating new applications easier and quicker. With serverless, you don’t have to worry about server ops anymore; you can just write your functions, upload the code to one of the cloud providers (AWS Lambda is currently the biggest one) and let them handle all the backend work (and you only pay for the time when your code is executed). This is the next big change that will bring event-based programming to the next level and it’s already gaining mainstream traction.

Event-driven programming application IT

Published at DZone with permission of Annika Helendi, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

Related

  • Docker Image Building Best Practices
  • Dynatrace Perform: Day Two
  • Non-blocking Database Migrations
  • How API Management Can Ease Your Enterprise Cloud Migration

Partner Resources

×

Comments
Oops! Something Went Wrong

The likes didn't load as expected. Please refresh the page and try again.

ABOUT US

  • About DZone
  • Support and feedback
  • Community research
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 100
  • Nashville, TN 37211
  • support@dzone.com

Let's be friends:

Likes
There are no likes...yet! 👀
Be the first to like this post!
It looks like you're not logged in.
Sign in to see who liked this post!