Synopses & Reviews
Learning to Program with Alice, 2e, is appropriate for all one-semester pre-CS1 and computer literacy courses, and for integration into the first weeks of many introductory CS1 courses.
Alice was designed to make programming concepts easier to teach and learn. In the Second Edition of Learning to Program with Alice, Alice’s creators offer a complete full-color introduction to the interactive Alice 2.2 programming environment. The authors make extensive use of program visualization to establish an easy, intuitive relationship between program constructs and the 3D graphics animation action in Alice. Students discover how Alice blends traditional problem-solving techniques with Hollywood-style storyboarding. Fundamental object-oriented programming concepts and language syntax are taught independently. Programming concepts can be taught from either an objects-first or an objects-early approach, with an optional early introduction to events. The book’s Java-like syntax allows students to view their program code, simplifying their transitions to Java, C++, C#, or other object-oriented languages. This new edition even allows students to upload their animated programs onto YouTube and share their work on the Web.
About the Author
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 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.
Table of Contents
Part I. Introduction to Alice
1. Getting Started with Alice
2. Program Design and Implementation
3. Programming: Putting Together the Pieces
Part II. Object-oriented and Event-driven Programming Concepts
4. Classes, Objects, Methods, and Parameters
5. Interaction: Events and Event Handling
Part III. Using Questions and Control Statements
6. Functions and If/Else
7. Repetition: Definite and Indefinite Loops
8. Repetition: Recursion
Part IV. Advanced Topics
9. Lists and List Processing
10. Variables and Revisiting Inheritance
11. What’s Next?
Appendix A: Getting Started
Appendix B: Managing the Alice Interface