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. Cover......Page 1 Contents......Page 8 Foreword......Page 12 Preface......Page 14 Acknowledgments......Page 22 About the Authors......Page 24 Part I: Introduction to Alice......Page 28 1-1 Introduction to Alice......Page 30 1-2 Alice Concepts......Page 35 Tips & Techniques 1: Special Effects: Text and 2D Graphic Images......Page 42 Summary......Page 45 Exercises......Page 46 2-1 Scenarios and Storyboards......Page 49 2-2 A First Program......Page 56 Tips & Techniques 2: Orientation and Movement Instructions......Page 70 Summary......Page 84 Exercises......Page 86 3 Programming: Putting Together the Pieces......Page 89 3-1 Built-in Functions and Expressions......Page 90 3-2 Simple Control Structures......Page 95 Tips & Techniques 3: Camera and Animation Controls......Page 103 Summary......Page 108 Exercises......Page 110 Part II: Object-Oriented and Event-Driven Programming Concepts......Page 114 4 Classes, Objects, Methods and Parameters......Page 116 4-1 World-Level Methods......Page 118 4-2 Parameters......Page 127 4-3 Class-Level Methods and Inheritance......Page 137 Tips & Techniques 4: Visible and Invisible Objects......Page 148 Summary......Page 154 Exercises and Projects......Page 156 5-1 Interactive Programming......Page 167 5-2 Parameters and Event Handling Methods......Page 173 Tips & Techniques 5: Creating Your Own People Models......Page 182 Summary......Page 184 Exercises and Projects......Page 185 Part III: Using Functions and Control Statements......Page 196 6-1 Functions......Page 198 6-2 Execution Control with If/Else and Boolean Functions......Page 205 Tips & Techniques 6: Random Numbers and Random Motion......Page 218 Summary......Page 221 Exercises and Projects......Page 223 7-1 Loops......Page 235 7-2 While —a Conditional Loop......Page 241 Tips & Techniques 7: Events and Repetition......Page 247 Summary......Page 249 Exercises and Projects......Page 251 8-1 Introduction to Recursion......Page 258 8-2 Another Flavor of Recursion......Page 263 Tips & Techniques 8: Engineering Look and Feel......Page 273 Summary......Page 276 Exercises and Projects......Page 277 Part IV: Advanced Topics......Page 284 9-1 Lists......Page 286 9-2 List Search......Page 292 Tips & Techniques 9: Poses......Page 296 Summary......Page 297 Exercises and Projects......Page 298 10-1 Variables......Page 304 10-2 An Array Visualization Using an Index Variable......Page 315 Tips & Techniques 10: Debugging with Watch and Text Output......Page 323 Summary......Page 327 Exercises and Projects......Page 328 11 What's Next?......Page 333 Part 1: Running Virtual Worlds in Alice......Page 338 Part 2: Using Popup Menus to Create an Initial Scene......Page 352 Appendix B: Managing the Alice Interface......Page 357 A......Page 372 C......Page 373 E......Page 374 I......Page 375 L......Page 376 O......Page 377 P......Page 378 S......Page 379 T......Page 380 X–Y–Z......Page 381 Accompanying CD-ROMs contain Alice 2.0 and Alice 2.2, an update that fixes several Alice 2 bugs and implements an Export Video option Provides information on the features and function of the computer programming langauge Alice.