Table of Contents iii
Preface to the Instructor
Part I: Introduction to Alice
1 Getting Started with Alice
1-1 Introduction to Alice
1-2 Alice Concepts
Tips & Techniques 1: Special Effects: Text and 2D Graphic Images
2 Program Design and Implementation
2-1 Scenarios and Storyboards
2-2 A First Program
Exercises
Summary
3 Programming: Putting Together the Pieces
3-1 Built-in Functions and Expressions
3-2 Simple Control Structures
Tips & Techniques 3: Engineering Look and Feel
Exercises
Summary
Part II: Object-oriented and Event-driven Programming Concepts
4 Classes, Objects, Methods, and Parameters
4-1 World-level Methods
4-2 Parameters
4-3 Class-level Methods and Inheritance
Tips & Techniques 4: Visible and Invisible Objects
Exercises and Projects
Summary 123
5 Interaction: Events and Event Handling
5-1 Interactive Programming
5-2 Passing Parameters to Event Handling Methods
Tips & Techniques 5: Events
Exercises and Projects
Summary
Part III: Using Functions and Control Statements
6 Functions and If/Else
6-1 Functions
6-2 Execution Control with If/Else and Boolean Functions
Tips & Techniques 6: Random Numbers and Random Motion
Exercises and Projects
Summary 190
7 Repetition: Definite and Indefinite Loops
7-1 Loops
7-2 While – An Indefinite Loop
Tips & Techniques 7: Events and Repetition
Exercises and Projects
Summary
8 Repetition: Recursion
8-1 Introduction to Recursion
8-2 Another Flavor of Recursion
Tips & Techniques 8: Camera and Animation Controls
Exercises and Projects
Summary
Part IV: Advanced Topics
9 Lists and List Processing
9-1 Lists
9-2 List Search
Tips & Techniques 9: Poses
Exercises and Projects
Summary
10 Variables and Revisiting Inheritance
10 -1 Variables
10-2 An Array Visualization Using an Index Variable
Exercises and Projects
Summary
11 What’s Next?
Appendix
Appendix A: Using Alice
Part 1: Running virtual worlds in Alice
Part 2: Using Popup Menus to Create an Initial Scene
Appendix B: Managing the Alice Interface
Index
Wanda Dann is Associate Professor of Computer Science at
Carnegie Mellon University. Her research has encompassed program
visualization and object-oriented and event-driven programming. She
has published papers on the use of program visualization in
computer science education for SIGCSE, the Computer Science
Education Journal, and related publications. She has been co-PI for
three NSF-funded projects. She is an active member of the ITiCSE
Visualization Working Group, studying the effectiveness of
visualization in computer science education. She has taken on a
major leadership role in the international computer science
education community, serving as SIGCSE 2004 Program co-Chair and
SIGCSE 2005 Symposium co-Chair.
Stephen Cooper is an Associate Professor of Computer Science
at Saint Joseph's University. He taught previously at Rivier
College, serving as Computer Science program director. He has also
worked at IBM as a systems programmer. Dr. Cooper's research
interests lie in the semantics of programming languages as well as
in program visualization. He is the author or co-author of a dozen
articles, and has been the principal investigator for several
National Science Foundation and private grants.
Randy Pausch is a Professor of Computer Science, Human-Computer Interaction, and Design at Carnegie Mellon, where he is the co-director of CMU’s Entertainment Technology Center (ETC). He was a National Science Foundation Presidential Young Investigator and a Lilly Foundation Teaching Fellow. He has done Sabbaticals at Walt Disney Imagineering (WDI) and Electronic Arts (EA), and has consulted with Disney on user interfaces for interactive theme park attractions and with Google on user interface design. Dr. Pausch is the author or co-author of five books and over 70 articles, is the director of the Alice software project, and has been in zero gravity.
![]() |
Ask a Question About this Product More... |
![]() |