From last time…
•

Global vs. local variable scope!

•

Making static assets with saveFrame()
Functions I

CAP
Functions Review
void setup() {}
void draw() {}
•

We can do two things with functions:!

! 1. call a function:!
! ! size(500,500);
2. define a function:!
! ! void size(int width, int height) {}
Defining a Function
the type of value we expect to be ‘returned’
the arguments we can pass in

returnType functionName( argumentList )
{
// some code goes here
}
the variable type we expect to be ‘returned’
the arguments we will pass in

returnType functionName( argumentList )
{
// some code goes here
}
1. Function Name: a name!
2. Input: the variable types of arguments we will pass in!
3. Output: the variable type that will be returned
( void signifies that we do not expect returned value )
Demo!
square() function
Why functions?
•

Functions organize code in a way that humans
can understand!

•

Modularity: smaller, more readable, more
manageable bits of code; it’s debuggable!!

•

Reusability: you can reuse code within a sketch
(two pong paddles) or between sketches
Example
Organized into functions

vs. pure chaos
Time Permitting!

Demo!
Make Pong Functions
For next time…
•

Read Shiffman, p. 107–119 (Functions II)!

•

Continue (or start) working on Iteration 1

Quiz 2!
Variables, Conditionals, & Loops

10. Function I

  • 1.
    From last time… • Globalvs. local variable scope! • Making static assets with saveFrame()
  • 2.
  • 3.
    Functions Review void setup(){} void draw() {} • We can do two things with functions:! ! 1. call a function:! ! ! size(500,500); 2. define a function:! ! ! void size(int width, int height) {}
  • 4.
    Defining a Function thetype of value we expect to be ‘returned’ the arguments we can pass in returnType functionName( argumentList ) { // some code goes here }
  • 5.
    the variable typewe expect to be ‘returned’ the arguments we will pass in returnType functionName( argumentList ) { // some code goes here } 1. Function Name: a name! 2. Input: the variable types of arguments we will pass in! 3. Output: the variable type that will be returned ( void signifies that we do not expect returned value )
  • 6.
  • 7.
    Why functions? • Functions organizecode in a way that humans can understand! • Modularity: smaller, more readable, more manageable bits of code; it’s debuggable!! • Reusability: you can reuse code within a sketch (two pong paddles) or between sketches
  • 8.
  • 9.
  • 10.
    For next time… • ReadShiffman, p. 107–119 (Functions II)! • Continue (or start) working on Iteration 1 Quiz 2! Variables, Conditionals, & Loops