Uses a creative approach to teach the basic skills and concepts of programming quickly. This edition offers excellent insights into problem solving and program design processes. It will also improve comprehension of such computer science considerations as loop invariants and recursion. Includes 60 color line drawings.
Beyond Karel J Robot trades comprehensive coverage of Java low level detail for an understanding of how a language like Java is used to build real programs. It's organization is not that of a reference work, but an enfolding of interesting and necessary concepts used by real programmers. A number of users have asked for more material in the spirit of Karel J Robot. The original book is intended for only the beginning weeks of a course, which leaves some the dilemma of what to do for the rest of the term. This volume is an attempt to discuss some additional ideas as well as some more Java features. The chapter numbering begins where Karel J Robot leaves off and we will frequently make mention of what was learned there. However, we begin to leave the robot world here and will discuss many ideas from beyond that world. The two volumes together should form the basis of a first course in computing using Java. While I have generally followed the guidelines of the College Board recommendations for the APCS AB advanced placement course, I have not attempted to be encyclopedic. We will see int, double, char, etc., but no attempt was made to provide all the rules and caveats of such things. Many books that call themselves text-books seem to me to be, instead, reference works, with everything gathered together nicely to ease looking up information, rather than books to learn from. Instead, I have attempted to show, for the most part, how the features of Java are used to build real programs. This is a book about writing programs, including some quite interesting and difficult programs. You may struggle with some of this material, but the struggle will take you to a better place. I hope you agree that it is worth the work you will put in to it.
SUMMARY: Introduces programming concepts, plus an overview of PASCAL. It is designed to be covered at the beginning of an introductory programming course, prior to the study of a computer programming language.
This creative approach to learning C++ programming introduces readers to Karel the Robot and then shows them how to design programs that instruct Karel to perform complex tasks. Karel's world is essentially a practice field on which readers learn valuable lessons about creating and debugging program. The programs instruct the robot to move and manipulate its environment using object orientation.
"Karel R Tuesday" is an introduction to computer programming for novices. It uses the Ruby programming language to introduce the principles of dynamic object-oriented programming. It is the latest version in the "Karel The Robot" series, originally developed by Richard Pattis. It is a true successor to the original, emphasizing problem solving in a simple but "Turing Complete" and interesting virtual world. "Karel R Tuesday" stresses problem solving rather than language syntax. It has been shown to be an effective learning environment for novice programmers. A student able to do the exercises in this book, or one of its companions, is truly on his or her way to a deep understanding of programming. Learn to write sophisticated Ruby code in a few weeks. It is not a comprehensive treatment of Ruby, but emphasizes problem solving using objects, writing classes, and developing skill in algorithmic and polymorphic thinking. It goes beyond thinking of computing as just "if" and "while." The advantages pointed out by reviewers of the earlier "Karel J Robot" apply to this version as well: "Karel J Robot" is an excellent introduction to modern computer science, without letting students get overwhelmed by the details of a programming language (even though it is real Java). KJR provides a framework for understanding Object-Oriented Programming from the very beginning. Students are encouraged to develop problem-solving skills by producing projects that solve very complex problems with a relatively small set of tools. Don Slater, Carnegie-Mellon University I have been successfully introducing students in grades 9 through 12 to programming using Karel for the past twenty years and "Karel J Robot" is the most effective version yet. Students love it They find principles of OOP (class design, constructors, methods, inheritance, polymorphism) come naturally to them, even before they learn about control structures. They discover recursive solutions without ever being taught recursion. Best of all, Karel is gender neutral --- both girls and boys are so involved and excited that I have to push them out the door and on to their next class when the period ends. Kathy Larson, Kingston High School, Kingston New York "Karel J Robot: A Gentle Introduction to the Art of Object-Oriented Programming in Java" takes you on a well-sequenced and thoughtful journey through the essential concepts in a first semester computer science course. Experience computer science at the level that it is most inspiring - the conceptual level. The visual environment will help you teach and your students learn because everyone will have immediate visual feedback, enabling them to see what they are doing. You will leave the Karel world with a deep understanding of polymorphism, inheritance, abstraction, modularization, and step-wise refinement, to name just a few topics. If you are an AP Computer Science teacher, you have just found the perfect guide to help ensure you do not lose sight of the forest (i.e., computer science) through the trees (i.e., the details of the language). Dave Wittry, Troy High School "Karel J Robot" provides an uncluttered setting for laying the foundation for all of the key OO concepts. The perfect "starter" for understanding objects, OO design and OO programming. Michael Goldweber, Xavier University
And although originally written in Czech, the book was commissioned by Catbird Press and was therefore written with foreign readers in mind; in other words, no prior knowledge of Capek's writings or his milieu is required."--BOOK JACKET.
Capek's best plays, stories, and columns take us from the social contributions of clumsy people to dramatic meditations on mortality and commitment. The Reader includes a new and, at last, complete English translation of R.U.R., the play that introduced the literary robot.
"Monty Karel" is an introduction to computer programming for novices. It uses the Python programming language to introduce the principles of dynamic object-oriented programming. It is the latest version in the "Karel The Robot" series, originally developed by Richard Pattis. It is a true successor to the original, emphasizing problem solving in a simple but "Turing Complete" and interesting virtual world. "Monty Karel" stresses problem solving rather than language syntax. It has been shown to be an effective learning environment for novice programmers. A student able to do the exercises in this book, or one of its companions, is truly on his or her way to a deep understanding of programming. Learn to write sophisticated Python code in a few weeks. It is not a comprehensive treatment of Python, but emphasizes problem solving using objects, writing classes, and developing skill in algorithmic and polymorphic thinking. It goes beyond thinking of computing as just "if" and "while." The advantages pointed out by reviewers of the earlier "Karel J Robot" apply to this version as well: "Karel J Robot" is an excellent introduction to modern computer science, without letting students get overwhelmed by the details of a programming language (even though it is real Java). KJR provides a framework for understanding Object-Oriented Programming from the very beginning. Students are encouraged to develop problem-solving skills by producing projects that solve very complex problems with a relatively small set of tools. Don Slater, Carnegie-Mellon University I have been successfully introducing students in grades 9 through 12 to programming using Karel for the past twenty years and "Karel J Robot" is the most effective version yet. Students love it They find principles of OOP (class design, constructors, methods, inheritance, polymorphism) come naturally to them, even before they learn about control structures. They discover recursive solutions without ever being taught recursion. Best of all, Karel is gender neutral --- both girls and boys are so involved and excited that I have to push them out the door and on to their next class when the period ends. Kathy Larson, Kingston High School, Kingston New York "Karel J Robot: A Gentle Introduction to the Art of Object-Oriented Programming in Java" takes you on a well-sequenced and thoughtful journey through the essential concepts in a first semester computer science course. Experience computer science at the level that it is most inspiring - the conceptual level. The visual environment will help you teach and your students learn because everyone will have immediate visual feedback, enabling them to see what they are doing. You will leave the Karel world with a deep understanding of polymorphism, inheritance, abstraction, modularization, and step-wise refinement, to name just a few topics. If you are an AP Computer Science teacher, you have just found the perfect guide to help ensure you do not lose sight of the forest (i.e., computer science) through the trees (i.e., the details of the language). Dave Wittry, Troy High School "Karel J Robot" provides an uncluttered setting for laying the foundation for all of the key OO concepts. The perfect "starter" for understanding objects, OO design and OO programming. Michael Goldweber, Xavier University
Currently used at many colleges, universities, and high schools, this hands-on introduction to computer science is ideal for people with little or no programming experience. The goal of this concise book is not just to teach you Java, but to help you think like a computer scientist. You’ll learn how to program—a useful skill by itself—but you’ll also discover how to use programming as a means to an end. Authors Allen Downey and Chris Mayfield start with the most basic concepts and gradually move into topics that are more complex, such as recursion and object-oriented programming. Each brief chapter covers the material for one week of a college course and includes exercises to help you practice what you’ve learned. Learn one concept at a time: tackle complex topics in a series of small steps with examples Understand how to formulate problems, think creatively about solutions, and write programs clearly and accurately Determine which development techniques work best for you, and practice the important skill of debugging Learn relationships among input and output, decisions and loops, classes and methods, strings and arrays Work on exercises involving word games, graphics, puzzles, and playing cards