- Shopping Bag ( 0 items )
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.
Pt. I Introduction to Alice 1
1 Getting Started with Alice 3
2 Program Design and Implementation 22
3 Programming: Putting Together the Pieces 62
Pt. II Object-Oriented and Event-Driven Programming Concepts 87
4 Classes, Objects, Methods and Parameters 89
5 Interaction: Events and Event Handling 140
Pt. III Using Functions and Control Statements 169
6 Functions and If/Else 171
7 Repetition: Definite and Conditional Loops 208
8 Repetition: Recursion 231
Pt. IV Advanced Topics 257
9 Lists and List Processing 259
10 Variables and Revisiting Inheritance 277
11 What's Next? 306
App. A Using Alice 311
App. B Managing the Alice Interface 330
Posted October 19, 2005
In a way, this is a tricky book for me to review. I learnt programming with Fortran on punch cards [remember them?]. Then later gravitated to other languages like Pascal, C and Java. But it was only in the 90s that languages started coming out with graphics built in. Prior to that, it was mostly text and binary Input/Output. That was our User Interface, shocking as it might seen to some of you. So there were always abstractions in learning a language, from the very start. The authors of this book are spot on in saying that there has been little or no change in the teaching of programming to beginners, in the last 30 years. The languages being taught may have changed. Some are now object oriented, and have graphics libraries. But the basic pedagogy has remained constant all this time. So for example the classic 'Pascal: User Manual and Report' from 1980 and a current book on Java have this in common. The innovation offered by Alice is a stark contrast indeed. Alice lets you learn [or teach] a special programming language that manipulates objects in a three dimensional world. The emphasis is on the object-oriented nature of Alice. While other languages use the metaphor of OO mapping to and from real world objects, Alice gives a literal visual mapping that students can readily comprehend. Alice removes the middleman metaphor. Interestingly, the authors suggest that Alice shifts some of the mental effort from the student's cognition to her perceptual [visual] system. Her visual incoming bandwidth is so large that visual changes can be readily understood. The authors cite studies that show a faster uptake by students using Alice, compared to students without Alice. Alice has several niceties that aid in its usage. Especially useful is the lack of syntax issues. The essentially menu or icon driven implementation means that a student does not have to type in syntax. Hence avoiding a common source of errors. For students with a limited attention span, this removes a big source of frustration. To be sure, Alice is just meant as a teaching language. Students are expected to graduate onto more realistic languages. But Alice can help those delicate cases of newcomers to programming retain some knowledge, and possibly even take more advanced courses. Here, the authors point out that an important special usage is for a course aimed at students who will not be programmers. That will be their first and only programming course. The teaching of such a course is important, and Alice might help.
1 out of 1 people found this review helpful.Was this review helpful? Yes NoThank you for your feedback. Report this reviewThank you, this review has been flagged.