Lecture notes (4-2)

Download Report

Transcript Lecture notes (4-2)

CS320n –Visual Programming
Parameters
Mike Scott
(Slides 4-2)
What We Will Do Today
• Learn how to use parameters in methods
• (reminder. Clipboard)
Visual Programming
Parameters
2
Overview
• The need for more flexible methods
– Snowman example. What if there are lots of
snowwomen or other objects and we want the
snowman to try and get the attention of any
one of them?
• Passing a parameter to a method
• Demos
– Using the Alice interface to write code for a
parameter object
Visual Programming
Parameters
3
A beetle band
• Our task is to create an animation for a bug band as an
advertisement for their next concert.
• In the animation, each band member will perform
a short solo.
Visual Programming
Parameters
4
Storyboards
• Each bug band member will perform a solo.
Do together
Do in order
georgeBeetle move up
georgeBeetle move down
play sound
Do together
Do in order
ringoBeetle move up
ringoBeetle move down
play sound
Do together
Do in order
paulBeetle move up
paulBeetle move down
play sound
Do together
Do in order
lennonBeetle move up
lennonBeetle move down
play sound
Visual Programming
Parameters
5
Code for georgeBeetle solo
• This code will only work for georgeBeetle.
• Since each band member performs a solo,
we will need four versions of the code.
SHOW PROGRAM
Visual Programming
Parameters
6
A Better Solution
• Four versions of very similar code seems
a bit tedious. The only things that change
are the beetle and the music that plays.
• A better solution is to write a more flexible
method.
– one where the object that does the solo AND
the music it plays can be specified in some
way
Visual Programming
Parameters
7
Parameters
• Built-in methods provide flexibility by providing
parameters such as distance and direction.
• Parameters allow you to pass in values (we call
the values arguments).
– Example
Parameters: distance, direction
Arguments: 0.5 meters, 0.5 seconds
Visual Programming
Parameters
8
Kinds of Parameters
• Alice provides several kinds of parameters that
can be used in your own methods.
Visual Programming
Parameters
9
The storyboard
Back to our problem…
We want to write only one method and
use parameters to specify
which band member is to perform and
which music should be played.
Solo:
Parameters: bandMember, music
Do together
Do in order
bandMember move up
bandMember move down
play music
Visual Programming
Parameters
10
Demo
• Demonstration of creating a method
named solo that can be used for any band
member.
• We will need
– an Object parameter -- which band member
is to play a solo
– a Sound parameter -- which music
should be played
Visual Programming
Parameters
11
World.solo with parameters
.
Visual Programming
Parameters
12
Calling the solo method
Note that in each call to the method, arguments must be
given for both parameters.
Visual Programming
Parameters
13
Specifying Arguments
• When adding one of
your methods with
parameters to a
program a pop up
menu is used to
specify the
arguments
• order important
Visual Programming
Parameters
14
A Number parameter
Let's add a Number parameter to specify the height the
bandMember jumps up and down.
Visual Programming
Parameters
15
Demo
• Demonstrate the use of a Number
parameter to specify the height the
bandMember is to jump
Visual Programming
Parameters
16
Adding Sound to Animations
• In the file Alice/required/sounds
are the default sounds
• call the play sound method for an
object and a menu of sounds is
presented, based on the files in
this directory
Visual Programming
Parameters
17
Adding Sounds
• You can also import sounds
– search computer for sound files
– .wav and .mp3
• any sound in the Alice/required/sound
directory is a default choice
• DEMO: make all the beetles jump up and
play the same sound at the same time
Visual Programming
Parameters
18