Interactive Programming Alice. Control of flow Control of flow -- how the sequence of actions in a program is controlled. What action happens first, what.

Slides:



Advertisements
Similar presentations
PIIT Computer Science Summer Camp - Alice July 11, 2012 Brenda Parker Computer Science Department MTSU.
Advertisements

Alice Inheritance and Event Handling. Inheritance Concept Consider this hierarchy; parents describe properties of children Animals Vertebrates MammalsFish.
Events Chapter 7. Interactivity The real world is interactive User determines order of actions instead of programmer.
Events Chapter 7. Interactive Real world is interactive User determines order of actions instead of programmer.
Parameters and Event-Handler Methods Alice. Mouse input Interactive programs often allow the user to use a mouse to click buttons in a windows-based interface.
Introduction to Alice Alice is named in honor of
Fall 2007ACS-1805 Ron McFadyen1 Chapter 5 Interactive Programs.
Exploring Events. Try this Start Alice and create a blank world using the grass template. Add an instance of a BlueBallerina. Add an instance of a PinkBallerina.
Fall 2009ACS-1805 Ron McFadyen1 ACS-1805 Introduction to Programming using Alice.
CS320n –Visual Programming Interactive Programs Mike Scott (Slides 5-1)
Interaction: Events and Event Handling
Introduction to Alice Alice is named in honor of Lewis Carroll’s Alice in Wonderland.
Sequencing Miss Regan. Blood Hound  Does anyone know what the Bloodhound project is?  Video 1 Video 1  Video 2 Video 2  Link to website Link to website.
Event-driven programming. Most modern computer programs that people use have Graphical User Interfaces (GUIs). A GUI has icons on the computer screen.
The Scratch Calculator You are all going to be real computer programmers!!!
Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley This week: Whew!!! The last homework was tough! The homework for this week.
Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Alice: A Visual Introduction to Programming First Edition.
Execution Control with If/Else and Boolean Functions
CSC1401: Introductory Programming Steve Cooper
CompSci 4 Chap 5 Sec 1 Oct 13, 2005 Prof. Susan Rodger Note: thanks to Wanda Dann and Steve Cooper for slide ideas.
Introduction to Alice Alice is named in honor of Lewis Carroll’s Alice in Wonderland.
Study Guide For Test Chapter 5, 6,& 7 Test is Friday, May 15th.
Alice: Functions Alice Chapter 6 September 19, 2005.
Interaction: Events and Event Handling
Review For Test Chapter 4 & 5 Test is Wednesday, January 27th.
Event Driven Programming Chapter 5. Sequential Programming Computer-Centric Computer-Centric Program Runs as Programmer Intended Program Runs as Programmer.
Events (2) (Alice In Action, Ch 6) Slides Credit: Joel Adams, Alice in Action CS 120 Lecture September 2012.
Today’s Agenda 1.Collect Pre-Lab 5 2.Collect Alice project storyboards 3.Events 4.Dummy Objects 5.Assign pair programming teams and meet upstairs for Lab.
Parameters and Event-Handler Methods Alice. Mouse clicks Interactive programs often allow the user to mouse click an object in the display. buttons in.
Four Fundamental Pieces Instruction Control Structure Function Expression.
Interactive Programming Sec 49 Web Design. Objectives The student will: Understand the difference between movie mode and an interactive program Understand.
Variables and Inheritance A More Complex Example Alice.
Introduction to Programming G50PRO University of Nottingham Unit 2 : Introduction To Scratch Paul Tennent
Interactive Programming Alice. Control of flow Control of flow -- how the sequence of actions in a program is controlled. What action happens first, what.
Events (Alice In Action, Ch 6) Slides Credit: Joel Adams, Alice in Action CS 120 Lecture September 2012.
Buttons and Birds: Introduction to Interactive Events in Alice By Henry Qin, edited by Jenna Hayes under the direction of Professor Susan Rodger Duke University,
CompSci 4 Chap 5 Sec 2 Oct 18, 2005 Prof. Susan Rodger Note: thanks to Wanda Dann and Steve Cooper for slide ideas.
CS320n – Elements of Visual Programming Sending Parameters to Event Handler Methods (Slides 5-2) Thanks to Wanda Dann, Steve Cooper, and Susan Rodger for.
Programming: Putting Together the Pieces Built-in Questions and Expressions Alice.
List Search Alice. Common Uses of Lists Iterating through a list of several like items to accomplish the same task with each item. As in the previous.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 4: Events Programming with Alice and Java First Edition by John Lewis.
Questions Alice. Functionality A question receives value(s), performs some computation on the value(s), and returns (sends back) a value.
Copyright © 2012 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Alice: A Visual Introduction to Programming Third Edition.
Fall 2007ACS-1805 Ron McFadyen1 Chapter 2 Creating Your First Animation (An Introduction to Programming)
Chapter 5 Interaction: Events and Event Handling.
5 Event Handling Interactive Programming Suggested Reading Interaction: Events and Event Handling, Supplemental Text for CPSC 203 Distributed this term.
Interactive Programming MMP 220 Multimedia Programming This adapted material was prepared for students in MMP220 as as part of a curriculum redesign project.
Stage 17 Play Lab: Create a Story
Fall 2008ACS-1805 Ron McFadyen1 Event-driven programming Chapter 5 covers event-driven programming. Events are user or condition driven and so each event.
Repetition: Definite Loops Alice. Repetition In many kinds of animations, especially simulations and games, some actions happen again and again. Example:
CompSci 4 Chap 5 Sec 1 and 2 Oct 14, 2010 Prof. Susan Rodger.
Lesson 8C Animation and Events. Step 3: Animation Drag it into the method and have him say “let her go!” Click on the knight in the object tree and scroll.
Variables and Inheritance Part 1 Alice. Review: Properties A class defines properties for its own kind of object. When an object is created (instantiated),
Beginning Animation. Storyboard An Invitation to Dinner 1.Marlin and Dory (two small fish) are swimming and talking. 2.A shark (Bruce) swims up behind.
Starting Out with Alice: A Visual Introduction to Programming
Introduction to Event-Driven Programming
Event-driven programming
Variables and Inheritance Part 2
Lesson 1: Buttons and Events – 12/18
Introduction to Events
Repetition: Definite Loops
HAPPY NEW YEAR! Lesson 7: If-statements unplugged
Interactive Programming
Repetition: Definite Loops
ICT Programming Lesson 5:
Event-driven programming
Interactive Programming
Variables and Inheritance A More Complex Example
Presentation transcript:

Interactive Programming Alice

Control of flow Control of flow -- how the sequence of actions in a program is controlled. What action happens first, what happens next, and then what happens…and so on. In movie-style programs (chapters 1-4) the sequence of actions is determined by the programmer Creating a storyboard design Writing program methods to carry out the designed sequence

Interactive Animations In interactive programs, the sequence of actions is determined at runtime when the user provides input clicks the mouse presses a key on the keyboard Other sources of input are possible, depending on your computer system.

Interactive games In a video game where the user is guiding a spaceship, the sequence of actions in the game depends on what direction the user guides the ship and how fast the user presses the controls. Each time the program runs, user input may cause a different sequence of actions from previous executions of the program. In essence, control of flow is now “in the hands of the user!”

Events Each time the user provides some sort of input, we say an event is generated. An event is “something that happens”

event handlers An event may Trigger a response, or Move objects into positions that create some condition (e.g., a collision) that triggers a response. A method is called to carry out the response. We call this kind of method an event handler. When an event is linked to an event handler, a behavior is created.

How does this effect your program? Our goal is to write interactive programs. The approach will be the same as before, but the difference is that we must now be concerned with behaviors input from the user (events) how objects respond to an event (event handler methods)

Example Build an air show flight simulator. In an air show, the pilot uses biplane controls to perform acrobatic stunts.

Problem The whole idea in a flight simulator is to allow the user to control the flight path. The problem is: how do we write our program code to provide a guidance system that allows the user to be the pilot?

Solution Use keyboard input Up-arrow key to move the biplane forward Spacebar to make the biplane do a barrel turn (Note: other sets of keys could be used, we just arbitrarily picked a couple of keys on the keyboard.) Write event handler methods that respond to each key press

Storyboards Since two keys are used, two events are possible – so two storyboards are needed: Each storyboard outlines an event handler that responds to a particular event. Event: Spacebar press Response: Do together roll biplane a full revolution play biplane engine sound Event:: Up Arrow key press Response: Do together move biplane forward play biplane engine sound

Demo A demonstration of building the biplane acrobatic simulation flyForward barrel

biplane.flyForward Do not modify the length of the sound -- use "as is" Coordinate duration of move and play sound instructions by matching the duration of the move to the duration of the sound

Events Editor Once the event handler methods are written, each method must be linked to an event.

Testing Test event handler methods as they are developed. Write a method and test it, write a method and test it, and so on… (this is a technique called incremental development).

Assignment Read Chapter 5-1, Interactive Programming Lab 5-1