Java: Learning to Program with Robots

Java: Learning to Program with Robots
Authors
Byron Weber Becker
ISBN
0619217243
Published
16 Feb 2006
Purchase online
amazon.com

JAVA: LEARNING TO PROGRAM WITH ROBOTS is an innovative approach to teaching and learning introductory object-oriented programming. Students are introduced to object-oriented concepts with simulated robots, a hands-on approach that is engaging and fun for both students and instructors. Robots are used to lay a solid object-oriented foundation upon which students build an in-depth understanding of programming concepts using a wide range of non-robotic examples.

Page 2 of 2
  1. Editorial Reviews
  2. Customer Reviews

Customer Reviews

Shawn Plep said
I really have to hand it to the author of this book. He has made the process of learning Java boring as well as painful! If you wish to torture yourself, don't buy one of the many other books on Java - especially not one of the best-sellers, and especially not one that's been recommended by other people who are actually programmers. No, get this book - I assure you that you'll experience firsthand the meaning of the word "tedium". Pair the purchase of this book with a college course on Java taught by someone who lacks people skills, and you're on your way to a world of pure pain!

Web Professor said
I really like the approach used in this text. The robots world is useful in many ways:
1) it presents a very visual way to learn Java programming. Using small robot icons, students can navigate around a city grid as they develop programs using classes provided with the book (the concept is a greatly improved version of Karel the Robot of many years ago). The visual nature of the work allows students to grasp concepts quickly and have a great deal of satisfaction seeing immediate and graphical results of their work. "Hello world" is nice but why not move an object on a screen instead? Students who have never programmed before create very clever programs quickly. For example, by creating multiple robots, they immediately grasp the concept of threads and why they are needed.
2) It makes learning Java seem like creating a game with new challenges every chapter.
3) The idea of a rather large class library presents a realistic work environment to students. A company doesn't start building libraries of code the day they are hired. It is important that they learn to use existing libraries and understand how to extend them.
4) "Objects early" is an important approach in my opinion. Building classes in your first Object-Oriented Programming language experience can be intimidating when you are just learning what a class is. By presenting already developed classes, students can see how useful classes are, how important reusable code is, and how planning the library of code is important. They also have a better grasp of all OOP concepts before developing their own classes.
The best thing this book does, is present material in an order that leads the student to naturally ask at the end of every chapter, "OK, but can I do this instead...?" and the next chapter presents the answer to that question. For example, just as students are realizing that moving the robot (myrobot.move() to move 1 intersection) more than a single intersection at a time is a useful idea (the question "Can't I send the number of moves to the robot somehow?"), the author includes ways to do that. I have never read a programming text book that uses this approach as well as this one does.
5) Students begin to build their own classes in chapter 8. By that time, it seems natural to examine a situation with stepwise refinement in mind and to look at commonality of data elements for a class.

If you prefer to write a "Hello World" program and follow the very strict and predictable approach of many programming language texts, this book will not be comfortable for you. If you want to have some fun while learning Java, pick this book up and before you know it, you'll be lost in the robot world thinking of new things to do with them and exploring Java in creative ways.

You might also like...

Comments

Contribute

Why not write for us? Or you could submit an event or a user group in your area. Alternatively just tell us what you think!

Our tools

We've got automatic conversion tools to convert C# to VB.NET, VB.NET to C#. Also you can compress javascript and compress css and generate sql connection strings.

“Brevity is the soul of wit” - Shakespeare