Big Java: Early Objects
Books / Paperback
Books › Computers › Programming Languages › Java
ISBN: 1118431111 / Publisher: Wiley, January 2013
This book introduces programmers to objects at a gradual pace. Optional example modules are included using Alice and Greenfoot. The examples feature annotations with dos and don'ts along with cross references to more detailed explanations in the text. New tables show a large number of typical and cautionary examples. New programming and review problems are also presented that ensure a broad coverage of topics. Cay will also add sections on problem solving, and a new, more approachable and visual design developed for JfE and BJLO is used.
Read More
Cay Horstman (computer science, San Jose State U.) cannot be said to have produced the usual dry computer book in this effort. The author's approach is to relate concepts like object oriented programming to the real world things and problems they represent. To that end there are many color figures representing real world objects and situations that one might need to model in code. Graphs and diagrams are used to illustrate the expected behavior of example programs. There is also a color coding scheme, with a key in the front of the book that categorizes things by topic. The book assumes no prior knowledge of programming and begins by introducing basic concepts such as the definition of computer programs, algorithms, and errors. The often neglected use of flowcharts is also covered. It quickly moves into the specifics of the Java language with a discussion of object oriented programming and how it is implemented in Java. Further chapters introduce more sophisticated computer science topics such as recursion, sorting, searching, linked lists, stacks, hashes, and binary and red-black trees. All of these topics are covered with considerable rigor and in the context of the Java language. There is even a discussion of the halting problem as studied by Alan Turning and the book maintains a focus on efficiency, often using the ?big O? notation to describe the time complexity of algorithms. There is a chapter on the construction of GUIs using Swing and some other material on GUI elements throughout but it should be noted that the primary focus of the book is on writing clean, fast algorithms and learning the Java object system and language. There is a glossary of terms but there is no bibliography. It should be noted that chapters 21-25 are available only online at the publisher's website along with many other resources such as animations and even a code checker so that students can submit their solutions to the various problems. These chapters concern multithreading, networking, relational databases, XML, and web applications. This book perfectly balances the needs of the beginner with academic rigor. Annotation ©2013 Book News, Inc., Portland, OR (booknews.com)
Read Less