Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
The Java tutorial: a short course on the basics (6th ed.)
Gallardo R., Hommel S., Kannan S., Gordon J., Zakhour S., Addison-Wesley Professional, Upper Saddle River, NJ, 2014. 864 pp. Type: Book (978-0-134034-08-9)
Date Reviewed: May 28 2015

Beginning with the first edition of The Java tutorial in 1996, the book has been a hard-copy version of the online Java tutorials [1], where the content is available in Hypertext Markup Language (HTML) form. Ebook versions may be downloaded for free from the same site. There are obvious advantages to working with a (free) digital version, including the ability to electronically search the text, download code examples, and click on links to external resources, but some people will always prefer the solidity and permanence of a bound volume.

The stated audience for this text is “both novice and experienced programmers”; however, the book is not likely to be of much use to a complete beginner owing to the pace of the presentation and the quantity and density of the information presented. For example, in just nine pages, chapter 2 attempts to define objects, classes, data encapsulation, inheritance, interfaces, and packages. Readers unfamiliar with object-oriented programming will likely be intimidated by having so many definitions thrown at them at once. And while it is true that these concepts are further developed in later chapters, the treatment there is just as intense: in its 75 pages, chapter 4 on “Classes and Objects” expands upon the definitions given in chapter 2, but in exhaustive fashion. The chapter covers or makes reference to nested classes, anonymous classes, variable length argument lists (varargs) notation, shadowing, and serialization, among other things. A fourth of the chapter is devoted to lambda expressions, the most significant new feature in version 8 of the Java SE Development Kit.

All of this is not to say that the material is poorly written; on the contrary, the writing is clean and clear, the presentation is well-organized, and the tone is just right: casual and informal, never dry or pedantic. Readers looking for a more rigorous treatment will not find any syntax diagrams or a grammar for the Java language. Still, a lot of information is packed into the nearly 800 pages of this book, and a complete beginner will be at a disadvantage.

The first 14 chapters cover basic syntax, core language features such as primitive data types and control structures, object-oriented concepts, and some of the most commonly used classes for input/output, strings and collections, concurrency, and regular expressions. The remaining chapters, 15 through 22, deal with broader concerns such as the platform environment, packages and JAR files, Java Web Start, applets, rich Internet applications, deployment, date/time packages, and JavaFX. A ten-page appendix lists topics covered in Oracle’s Java Programming Language Certification exams. Most chapters of the book have questions and exercises at the end of major sections (all answers are provided at the online site).

While the book is fairly comprehensive in the topics it covers, particularly new features added in version 8 of the software development kit (SDK), it does not pretend to cover the many packages available in the Java application programming interface (API). Thus, there is no mention of classes such as Random or ArrayList, and no description of the Java Abstract Window Toolkit graphics or event classes. The utility functions in the Number class are described, but subclasses such as BigNumber and BigInteger are not covered.

The readers most likely to benefit from this book are those already proficient in another programming language who want an intense introduction to Java, Java programmers seeking to delve into some of the new or more advanced features of the language, or those who appreciate seeing a well-organized and thorough reference that includes carefully chosen running examples. For instance, the lambda expression section is introduced with a use case involving administrative actions on selected members of a social-networking application. The example progresses from simple, brittle approaches through the more sophisticated lambda expression solution. Later, in chapter 12 on Collection, the example is revisited in the discussion of streams and aggregate operations (another feature new to SDK version 8).

Professional Java programmers who prefer books on shelves as opposed to (or in addition to) online references will want to own this book. Novices seeking a gentler introduction to the language should look elsewhere.

More reviews about this item: Amazon

Reviewer:  R. Roos Review #: CR143480 (1508-0652)
1) The Java Tutorials. Oracle. https://docs.oracle.com/javase/tutorial/ (05/18/2015).
Bookmark and Share
 
Object-Oriented Programming (D.1.5 )
 
 
Java (D.3.2 ... )
 
 
Reference (A.2 )
 
Would you recommend this review?
yes
no
Other reviews under "Object-Oriented Programming": Date
Object-oriented programming systems, languages, and applications
Paepcke A.  Object-oriented programming systems, languages, and applications,Phoenix, AZ,Oct 6-Oct 11, 1991,1991. Type: Whole Proceedings
Oct 1 1992
Object lifecycles
Shlaer S., Mellor S., Yourdon Press, Upper Saddle River, NJ, 1992. Type: Book (9780136299400)
Apr 1 1993
Object-oriented programming
Voss G., Osborne/McGraw-Hill, Berkeley, CA, 1991. Type: Book (9780078816826)
Oct 1 1992
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy