Bulk sales, PO's, Marketplace Items, eBooks, Apparel, and DVDs not included.
Questions About This Book?
- The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any CDs, lab manuals, study guides, etc.
- The Used copy of this book is not guaranteed to include any supplemental materials. Typically, only the book itself is included.
- The Rental copy of this book is not guaranteed to include any supplemental materials. You may receive a brand new copy, but typically, only the book itself.
- The eBook copy of this book is not guaranteed to include any supplemental materials. Typically only the book itself is included.
Wanda Dann is the Director of the Alice Project and Associate Teaching 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 and the Director for the Center for Visualization 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 was a Professor of Computer Science, Human-Computer Interaction and Design at Carnegie Mellon, and co-founder of the Entertainment Technology Center. He also served as the Director of Carnegie Mellon's Alice research group, where he oversaw the development of Alice. He was a National Science Foundation Presidential Young Investigator and a Lilly Foundation Teaching Fellow. In 1995, he spent a Sabbatical with the Walt Disney Imagineering Virtual Reality Studio and consulted with Imagineering on interactive theme park attractions, particularly for the "DisneyQuest" virtual-reality based theme park. Dr. Pausch authored or co-authored five books and over 60 reviewed journal and conference proceedings articles, and his primary interests were human-computer interaction, entertainment technology and undergraduate education.
Table of Contents
About the Authors xxiii
Part I: Introduction to Alice 1
1 Getting Started with Alice 3
1-1 Introduction to Alice 3
1-2 Alice Concepts 8
Tips & Techniques 1: Special Effects: Text and 2D Graphic Images 15
2 Program Design and Implementation 22
2-1 Scenarios and Storyboards 22
2-2 A First Program 29
Tips & Techniques 2: Orientation and Movement Instructions 43
3 Programming: Putting Together the Pieces 62
3-1 Built-in Functions and Expressions 63
3-2 Simple Control Structures 68
Tips & Techniques 3: Camera and Animation Controls 76
Part II: Object-Oriented and Event-Driven Programming
4 Classes, Objects, Methods and Parameters 89
4-1 World-Level Methods 91
4-2 Parameters 100
4-3 Object-Level Methods and Inheritance 110
Tips & Techniques 4: Visible and Invisible Objects 121
Exercises and Projects 129
5 Interaction: Events and Event Handling 140
5-1 Interactive Programming 140
5-2 Parameters and Event Handling Methods 147
Tips & Techniques 5: Creating Your Own People Models 156
Exercises and Projects 159
Part III: Using Functions and Control Statements 171
6 Functions and If/Else 173
6-1 Functions 173
6-2 Execution Control with If/Else and Boolean Functions 180
Tips & Techniques 6: Random Numbers and Random Motion 196
Exercises and Projects 201
7 Repetition: Definite and Conditional Loops 213
7-1 Loops 213
7-2 While—a Conditional Loop 219
Tips & Techniques 7: Events and Repetition 225
Exercises and Projects 229
8 Repetition: Recursion 239
8-1 Introduction to Recursion 239
8-2 Another Flavor of Recursion 244
Tips & Techniques 8: Engineering Look and Feel 254
Exercises and Projects 258
Part IV: Advanced Topics 265
9 Lists and List Processing 267
9-1 Lists 267
9-2 List Search 273
Tips & Techniques 9: Groups 277
Exercises and Projects 280
10 Variables and Revisiting Inheritance 289
10-1 Variables 289
10-2 An Array Visualization Using an Index Variable 300
Tips & Techniques 10: Debugging with Watch and Text Output 308
Exercises and Projects 313
11 What’s Next? 322
11-1 Transition to Java 322
11-2 Alice 3 327
Tips & Techniques 11: Poses 328
Appendix A: Using Alice 331
Part 1: Running Virtual Worlds in Alice 331
Part 2: Using Popup Menus to Create an Initial Scene 345
Appendix B: Managing the Alice Interface 350