Csci 444 cis 644 event driven programming
Download
1 / 11

CSCI 444 / CIS 644 Event Driven Programming - PowerPoint PPT Presentation


  • 164 Views
  • Uploaded on

CSCI 444 / CIS 644 Event Driven Programming. Outline . What is an event driven system? What is event driven programming? Course Overview. I. What is an event driven system?. An event is an occurrence of interest Events take place at a particular time

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' CSCI 444 / CIS 644 Event Driven Programming' - menora


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Csci 444 cis 644 event driven programming

CSCI 444 / CIS 644Event Driven Programming


Outline
Outline

  • What is an event driven system?

  • What is event driven programming?

  • Course Overview


I what is an event driven system
I. What is an event driven system?

  • An event is an occurrence of interest

    • Events take place at a particular time

  • An event driven system is a computer system where events are a driving force

    • Events from the user (mouse click)

    • Internal events (variable assignment, timers)

    • Events from other computing systems (any message arriving across the network)


Examples of event driven systems
Examples of Event Driven Systems

  • Vending Machines

  • Cruise Control System in a car

  • TV

  • Any modern windowing program

    • e.g. PowerPoint

      What are the events associated with each of these?


Ii event driven programming
II. Event Driven Programming

  • Fundamentally a different paradigm from procedural (or OOP or functional or logic) programming

    • System is made of objects

    • System spends much of its time in stasis

    • Events occur that propagate through the system and then it returns to statis


Basic event driven programming model
Basic Event Driven Programming Model

notifies

Event Source

Event Handler

modifies

System Objects


What makes this model unique
What makes this model unique?

  • Loose Coupling between source and handler

    • Runtime registration

    • Multicasting

    • Multiplexing

    • Separate Compilation

    • Inverted Semantics


Differences continued
Differences continued

  • State based control

    • Behavior of system depends on its state

    • E.g. Coke machine only delivers pop after enough money has been inserted

    • Good ways and bad ways to implement this


Differences continued1
Differences continued

  • Concurrent and Distributed processing

    • If a handler takes too much time, other events might be delayed/lost

    • One solution is to have handler execute is a separate thread.

      • Concurrency concerns now become important.

      • E.g. what happens is multiple events arrive in rapid sequence? Might there be multiple threads executing in the same handler?


Concurrent and distributed processing continued
Concurrent and Distributed Processing - continued

  • Distributed Processing

    • Source and Handler might be on different computing systems entirely.

    • E.g. a web browser makes a request for a web page from a server.

    • Client / Server computing is fairly well understood. There are many other models, however.


Course outline
Course Outline

  • Java Event Driven Programming

  • Component Based Programming in Java

  • Concurrent and Distributed Event Programming

  • Software Engineering Event Driven Systems


ad