Top Banner
Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden
49

Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Dec 18, 2015

Download

Documents

Roy Barton
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Chapter 1 - Getting to know Greenfoot

Acknowledgement: Michael Kolling & Bruce Chittenden

Page 2: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Greenfoot Resources• Web site

– http://www.greenfoot.org• Scenarios

– http://www.greenfoot.org/scenarios/index.html

• Tutorial– http://www.greenfoot.org/doc/tutor

ial.html

• Book: Introduction to Programming with Greenfoot by Michael Kölling

Page 3: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Desktop Icon

Page 4: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

1.1 Getting Started

World

ClassDiagram

ExecutionControls

Page 5: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

World

• A Finite space where our program runs.

• Space where we can introduce some actors

• Allow actors to Interact

Page 6: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Class Diagram

• Shows Classes involved in the scenario

• Classes define general characteristics or behavior of a group

• Characteristics that are easily differentiable

• Is-A- Relationship

• Subclass relationship

Diagram contains Boxes called Class boxes

• WombatWorld is a subclass of World

• Wombat is a subclass for Actor

• Leaf is a subclass of Actor• Leaf is not a subclass of

Wombat• Actor is the super class of

Leaf and Wombat

Page 7: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Class Hierarchy

Teacher Student

Humans

Mammals food()drink()

think()react()

enroll ()study()

submit_Assignments()

teach ()evaluate()

prepare_Assignments()

Page 8: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

1.2 Objects and Classes

Right Click on Wombat

Click New Wombat()

Drag to World

Page 9: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Multiple Objects

• We can create multiple instances of same class

Page 10: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.1

Page 11: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

1.3 Interacting with Objects

• Wombat has certain function of its own

• And Certain function inherited from Actor class

Page 12: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Interacting with Objects

Invoke the Move method

Right Click on the Wombat

Page 13: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

1.4 Return Types

Page 14: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.3

Page 15: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.3

Page 16: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.4

Page 17: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

1.5 Parameters

Page 18: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.5

Page 19: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.5

Page 20: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.5

1

3

2

0

Page 21: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.5

Parameter > 3 Does Nothing

Page 22: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.5

Non-Integer Returns Error

Page 23: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

1.6 Greenfoot Execution

Page 24: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.6

Page 25: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.6

Wombat Moves toward the Leaves

Page 26: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.6

Wombat Moves to Leaves

Page 27: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Example 1.7

Wombat Eats Leaf

Page 28: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.8

Page 29: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.8

The >Act Execution Control Affects All the Wombats

Page 30: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.9

Wombat Runs Around the Edge of the World

Page 31: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.9

• Act Method– If we’re sitting on a leaf, eat the leaf– Otherwise, if we can move forward, move forward– Otherwise, turn left

Page 32: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

1.7 A Second Example

Page 33: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

1.8 Understanding the Class Diagram

World Class is always there in Greenfoot scenarios, it is built-in. Space represents a specific world for this scenario

Arrows show relationships

Explosion and Mover are subclasses of Actor

Bullet, Rocket, and Asteroid are subclasses of Mover.

Vector is a helper class

Page 34: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

1.9 Playing with Asteroids

Start Playing by Creating Some Actor Objects (Objects of the Subclass of Actor). Create Objects for Rocket, Bullet, Asteroid, and Explosion

Page 35: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.10

Right Click on the Object

Page 36: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.10

Click on setGunReloadTime and Type 5

Page 37: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.11

Right Click on the Object and Select Inspect

Page 38: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.11

Right Click on the Object and Select Inspect

Page 39: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.12

Right Click on the Object and Select getSpeed ( )

Page 40: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.12

Page 41: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.13

Page 42: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.14

Right Click on the Object and Select setSize(int Size) and Set the Size to 256

Page 43: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

1.10 Source Code

Right Click on the Class and Select Open editor

Page 44: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Source Code for Rocket

Page 45: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.15

Change gunReloadTime from 20 to 5

Page 46: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.15

Page 47: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Exercise 1.15

Class Changed Class Compiled

Page 48: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

1.11 SummaryIn this chapter, we have seen what Greenfoot scenarios can look like and how to interact with them. We have seen how to create objects and how to communicate with these objects by invoking their methods. Some methods are commands to objects, while other methods return information about the object. Parameters are used to provide additional information to methods, while return values pass information back to the caller.

Page 49: Chapter 1 - Getting to know Greenfoot Acknowledgement: Michael Kolling & Bruce Chittenden.

Concept Summary