Presentation is loading. Please wait.

Presentation is loading. Please wait.

Event-driven programming. Most modern computer programs that people use have Graphical User Interfaces (GUIs). A GUI has icons on the computer screen.

Similar presentations


Presentation on theme: "Event-driven programming. Most modern computer programs that people use have Graphical User Interfaces (GUIs). A GUI has icons on the computer screen."— Presentation transcript:

1 Event-driven programming

2 Most modern computer programs that people use have Graphical User Interfaces (GUIs). A GUI has icons on the computer screen and a mouse (or other device) to control a pointer that can be used to operate the computer. Event-Driven Programming

3 An Introduction to Programming Using Alice Most modern computer programs that people use have Graphical User Interfaces (GUIs). A GUI has icons on the computer screen and a mouse (or other device) to control a pointer that can be used to operate the computer.

4 This slide is an image of Microsoft Word 2007. It is an example of a modern graphical user interface.

5 Modern GUIs like the Word 2007 interface require the use of event-driven programming. An event occurs whenever an event listener detects an event trigger and responds by running a method called an event handler.

6

7 An event occurs whenever an event listener detects an event trigger and responds by running a method called an event handler. Modern operating systems and programming languages contain facilities to let programmers set up event listeners.

8 An event trigger can be almost any activity or condition selected by the programmer, such as a mouse movement, someone pressing the enter key, or a bank account balance changing.

9 An event handler is a method that is activated when the event trigger occurs. Almost any method can serve as an event handler, such as those that play sounds, initiate data communications, or perform calculations.

10 In Alice… Events can be used to control objects moving in 3D space. –Detect when some object moves –Detect when two objects collide –Make objects move in response to mouse or keyboard commands. So before discussing events in Alice, let’s talk about 3D space a little more.

11 3D space A dimension is a way of measuring something. We create a dimension whenever we assign a value on a continuous scale to some property. Example: On a scale of 1 to 100, how much do you approve of George Bush’s performance as president?

12 Measuring distance If you wish to measure the location of a point on a straight line, then you only need one number. You could mark a start point on the line, and then measure how far a point is from the start point By using negative and positive numbers, you could also indicate which direction the distance spans.

13 Orientation In addition, to the concepts of distance and direction, we also have the concept of orientation. Orientation means the direction the object is facing. If an object is facing the positive direction on the line, its orientation is forward. If facing negative, then backward.

14 Point of view Location and orientation together are known as the point of view of an object.

15 Two ideas of direction Absolute vs. object-relative. Absolute direction of boy on bike I backward, but forward in relation to Alice

16 Object-relative positions From the coach’s point of view, Alice is behind the boy, while the coach is in front of the boy.

17 Position in 2D On a flat surface, like a sheet of paper, you need two values to specify an object’s position (two dimensions). Rene Descarte developed a system of quantification for two dimensions. This is called Cartesian coordinates. Cartesian coordinates have an X axis (dimension) and Y axis. The coordinates of a point are always specified as x,y.

18

19 A third dimension Moving up and down off a flat plane requires a third axis or dimension. Instead of an ordered pair to represent position, we need an ordered triplet (x,y,z). In Alice the z axis provides a measurement of depth. 3D space is sometimes called Euclidean 3-space after the Greek mathematician, Euclid.

20

21 Absolute vs. Object-relative For all objects we must be aware of absolute position and direction However, we are most commonly concerned with object-relative position and direction.

22

23 More on object-relativity We must also frequently consider the movement of objects from the perspective of other objects. See SharkAsSeenByExample.a2w

24 Events in Alice

25 Alice events are created in the events area of the standard Alice interface. events area

26 Events in Alice Alice events are created in the events area of the standard Alice interface. events area

27 Events in Alice An Alice event tile specifies the event trigger and the event handler. In this example, the event trigger is the spacebar, being pressed and the event handler is the iceSkater’s simpleSpin method.

28 Events in Alice create new event button The create new event button will reveal a menu with nine different event types.

29 Events in Alice The create new event button will reveal a menu with nine different event types.

30 Events in Alice A programmer can pick the event type that has the desired event trigger.

31 Events in Alice Some event types also have built-in event handlers… A programmer can pick the event type that has the desired event trigger.

32 Events in Alice Some event types also have built-in event handlers… In other cases, programmers must specify the handler. A programmer can pick the event type that has the desired event trigger.

33 Event handlers are specified by dragging method tiles from the details area and dropping them into the event tile.

34 Exploring Events Start Alice and open the amusementPark example world. In the events area, you should see seven event tiles.

35 Amusement Park Events

36 Event-Driven Programming Events are an important part of Alice programming, allowing the creation of interactive worlds with keyboard and mouse user controls. Most modern programming languages allow programmers to add events to new software. Events can be used for many other purposes, such as controlling burglar alarms, checking remote sensors, or checking for system events, like printers running out of paper. Events are an important part of modern computer programming.


Download ppt "Event-driven programming. Most modern computer programs that people use have Graphical User Interfaces (GUIs). A GUI has icons on the computer screen."

Similar presentations


Ads by Google