java hosting


Title
Author
Publisher
ISBN
Reviewed by
Review text
Category

Your search returned 280 matching documents




Java and UML
by Paul R. Reed Jr.


Addison-Wesley Professional
1 edition
November 2001
504 pages

Reviewed by Ersin Eser, December 2001
  (5 of 10)


UML Topics discussed in this book stay on a conversational level related to OOAD and Unified Process (UP). A conceptual understanding of the topics occurs at very basic level, but it will not enable you to create diagrams related to this area. UP is discussed extensively throughout the book.

Regarding JAVA the author talks (cursory level) about JSP, Servlets, JavaBeans and EJB. Code is included which uses these technologies. If you don't know these topics, you will learn the basic conversational-level knowledge of the concepts. If you already know them, nothing new is added.

If you are a developer without OOAD knowledge, this book is a great warm-up book for you. It will encourage you to take the next step. If you are a non-technical reader and trying to understand all these new acronyms, terms, and concepts, this is a great book for you buy it.

More info at Amazon.com




Java Servlets
by Karl Moss


McGraw-Hill
second edition
June 1999
514 pages

Reviewed by Paul Wheaton, January 2000
  (5 of 10)


I read this book in 1998 when I was learning servlets. This is an overall good book, especially with the aspects of database stuff, multi-threading and big loads. I would probably put it in the recommended section, but it has been over a year since I looked at and I don't have it anymore. I would want to at least browse it again to give a good review. A second edition is now available.

Discuss book in the Saloon More info at Amazon.com




Java and XSLT
by Eric M. Burke


O'Reilly
1 edition
September 2001
544 pages

Reviewed by Thomas Paul, December 2001
  (9 of 10)


The combination of Servlets and XSLT is a natural fit and a possible alternative to Servlets and JSP.

This book gives excellent coverage to using XSLT to generate dynamic web pages. The first part of the book is an introduction to XSLT. For those unfamiliar with XSLT, this part of the book will be an excellent introduction. For those using XSLT, an additional tutorial or reference will be required. The next part of the book covers how to use a Java program to transform an XML document into HTML. SAX, DOM, JDOM, and JAXP are all covered. This section includes information on how to configure your environment to correctly process XML documents. Anyone who has run into the mysterious "sealing violation" will appreciate this help. The next part of the book is a series of case studies starting with a discussion forum. The case studies demonstrate solutions to real world programming issues and help to uncover some of the issues that programmers will face if they choose to use these technologies. Performance issues are discussed with each solution.

My one complaint with this book is that the author tends to overstate the advantages of XSLT while understating the advantages of JSP. Overall, the author has done an outstanding job of putting the two technologies (Java and XSLT) together in a way that is easy to understand.

Anyone interested in using XSLT in their Java development efforts should start with this book.

Discuss book in the Saloon More info at Amazon.com




Java and XML
by Brett McLaughlin, Brett McLaughlin


O'Reilly
second edition
September 2001
550 pages

Reviewed by Thomas Paul, January 2002
  (9 of 10)


The first edition of this book was considered one of the best on the subject of Java and XML. This new edition has expanded to include the developments in Java and XML over the last year. The author gives a little less handholding on the basics of XML reducing a three chapter introduction in the first edition to a one chapter summary. SAX, DOM, and JDOM all are covered in detail with each topic getting an introduction and an advanced chapter. JAXP 1.1 is covered in sufficient detail. After the introduction to the basic Java/XML APIs, the author moves on to some other interesting topics.

The chapters on web publishing frameworks and XML-RPC haven't changed much since the first edition. New chapters on SOAP, Web Services, and content syndication are welcome additions. The book ends with a look at data binding and JAXB.

The examples in the book are extremely clear and concise, explaining each topic well without being overly simplistic. As with the first edition, the author assumes that you are familiar with Java but unlike the first edition he assumes you have a basic understanding of XML.

If you are a Java developer and you are going to be working with XML then this book is required reading. The coverage of the Java/XML APIs is excellent. As for the other topics, it is a good introduction but for anyone working with SOAP or Web Services, other books will be required.

Discuss book in the Saloon More info at Amazon.com



O'Reilly
1 edition
June 2000
498 pages

Reviewed by Frank Carver, June 2001
  (9 of 10)


The first half of the book covers XML, DTD, Schema, parsing with SAX, DOM and JDOM, transformation, and traversal of XML data, and the second half covers some applications of XML; document and web site styling; remote procedure calls, configurations and a bit about integrating XML with other technologies such as perl. In general this book has good, solid coverage of most of the important aspects of XML and Java. The sensible sections on XML Schema, JDOM and JAXP, elevate it above many others, but you may need a more detailed book if you plan heavy use of DTD. The examples have just enough detail to be usable without swamping the text, which approaches nutshell-like conciseness. The later sections sometimes read a bit like a how-to guide for the authors favourite products from the Apache range - configuration and use of Xerces, Xalan, Cocoon and the non-standard XSP is covered in detail, but other, equivalent products are mostly ignored. XML technology is developing extremely fast, and some aspects of this book are already getting old. A few of the quoted URLs lead nowhere, and mention of newer standards such as the JAXP transformation API, XML data binding and Messaging APIs is a must for the next version. The JDOM examples may also be incorrect soon if the proposed package changes take place. Keep this book on your desk if you are developing XML with Java, and you won't go far wrong.

Discuss book in the Saloon More info at Amazon.com




Java Internationalization
by Andy Deitsch, David Czarnecki


O'Reilly
1 edition
March 2001
445 pages

Reviewed by Thomas Paul, May 2001
  (9 of 10)


There are three ways to handle internationalization of your Java applications. First, ignore it and give up all your non-English speaking customers. Second, write customized versions of your programs for each language you wish to support and live with a maintenance nightmare. Or third, take advantage of the many internationalization features built into Java. Fortunately, the internationalization features of Java are fairly simple to use and this book clearly explains how to apply them to your applications. The authors start with a description of the many writing systems in use through the world and discuss the many problems that these writing systems can cause for developers. The book then covers a wide range of topics: * how to use resource bundles to isolate locale specific data * formatting dates, numbers, and currency * handling searching and sorting issues for non-Latin alphabets (Japanese, Chinese, Hindi, etc.) as well as special cases within the Latin alphabet (an "a" with an umlaut is sorted with "a" in German but after "z" in Swedish) * handling languages such as Arabic and Hebrew that write from right to left * designing graphical interfaces to handle any writing system * building internationalized web sites If you plan on using the internationalization features of Java then you will definitely want to start with this book. The book is written for the intermediate to advanced Java programmer who needs to develop internationalized applications. The authors assume that the reader is unfamiliar with the issues involved with developing internationalized applications.

Discuss book in the Saloon More info at Amazon.com




Java Cryptography
by Jonathan Knudsen


O'Reilly
1 edition
May 1998
362 pages

Reviewed by Thomas Paul, April 2001
  (8 of 10)


Are you concerned about someone outside your company intercepting a password between your applet and your server? Are you worried about someone inside your company using a packet sniffer to capture the credit card numbers of your customers? No? Well, perhaps you should be! As a first step towards closing your security holes you should pick up a copy of "Java Cryptography". This book is written for the experienced Java developer with no cryptography background who needs to build cryptography into their application. The book starts off with a brief description of secure systems and demonstrates a "Hello zoT1WY1NJA0=!" program. It then gives a fairly detailed description of cryptographic concepts and the Java Cryptography Architecture (JCA). Subsequent chapters discuss how to use the Java Cryptography Extension (JCE). Chapter 5 covers generating and managing symmetric and asymmetric keys with an explanation of the difference. Chapter 6 discusses authenticating users and messages. Signatures and certificates are covered. Chapter 7 covers encryption techniques using different types of ciphers. Chapter 8 covers signing applets. The last chapters include sample encrypted chat and e-mail programs. The end result is a book that provides excellent coverage of cryptography in Java. The only defect in the book is that it is three years old (Java 2 was in beta). Fortunately, the book was written recently enough to include the new utilities used in Java 2. Even though a new edition is desirable, "Java Cryptography" still stands alone as the best book available on this topic.

Discuss book in the Saloon More info at Amazon.com




Java Threads
by Scott Oaks, et al


O'Reilly
second edition
January 1999
336 pages

Reviewed by Paul Wheaton, January 2000
  (8 of 10)


I bought this book when I was studying for the SCJP2 exam. I was worried that if the exam had a lot on threads I might not know the nitty-gritty particulars. As it turns out, Java threads are pretty simple. But! This book points out the details that can trip you up if you're not careful! Reading this book not only made Java threads rock solid in my head, but makes a great reference for when you jump into tricky threading waters.

Discuss book in the Saloon More info at Amazon.com



O'Reilly
second edition
January 1999
336 pages

Reviewed by Kathy Sierra, May 1999
  (8 of 10)


You need to learn more about Threads, so you need this book. It goes into great detail and will give you the mechanics of Threads in Java. If you're interested in patterns and the more subtle design issues of Threads, then you should also check out the Doug Lea "Concurrent Programming in Java" book, but start with the Oaks/Wong book first! [little warning: in some places "Java Threads" oversimplifies, and it doesn't offer the very lowest level of detail you could hope for, but it's still the best place to start]. This new Second Edition is updated for Java2, and includes new material and corrections to the earlier book.

Discuss book in the Saloon More info at Amazon.com




Java IO
by Elliotte Rusty Harold, et al


O'Reilly
1 edition
March 1999
596 pages

Reviewed by Kathy Sierra, May 1999
  (6 of 10)


Fresh off the press (Spring 1999), this book covers some of the same ground in his Networking book, but its all updated for Java2 and full of Things You Don't Know. The java.io package has more than 60 classes, and lots of twisty little subtleties. Did you know that PrintStream.println() is not cross-platform safe when used to send information via a networking socket, for instance? Aha! Then you need this book.

Discuss book in the Saloon More info at Amazon.com




Java Collections
by John Zukowski


Apress
1 edition
April 2001
420 pages

Reviewed by Bodie Minster, November 2001
  (9 of 10)


Java Collections is the most relevant and well-organized Java book I have read. There is a lot of detail provided, but not so much that it's painful to read. No space is wasted rehashing language basics. Fine distinctions between similar methods in the API are spelled out, and there are lots of examples given in good practice for the use of the API.

The code snippets are clear and very illustrative in almost every case. Take the time to read the Historical Collection part, because there are a few meaty little tidbits in here that even the pros may have missed.

This is not a monument to the author's arcane Java knowledge, unlike other advanced texts. If you are planning to use the collections API professionally, do yourself a favor and read this book!

Discuss book in the Saloon More info at Amazon.com




Java Rules
by Douglas Dunn


Pearson Education
1 edition
October 2001
720 pages

Reviewed by Margarita Isayeva, January 2002
  (10 of 10)


I liked this book a lot yet was uncertain how to evaluate it. A book should be judged according to the law of its genre and I had difficulty in defining what the genre is. Finally I found the word: "commentary". Commentary on Java "legal code" - a set of specifications - JLS, JVM, Inner Classes, Unicode standard, selected parts from Java API, even JavaSoft tutorial on the Collection framework, with detailed explanations.

Two first chapters, "Lexical Structure" and "Compilation Units" reflect on corresponding sections of the JLS. Inner classes, static, super, and this keyword (chapter 3) are covered to a depth I've not seen before. The chapters on data (4-5) include not only primitives and String/StringBuffer, but also BigInteger, BigDecimal, Date, Calendar, NumberFormat classes which makes the whole approach fundamental and encyclopedic. The last sixth chapter covers the Collections framework. Here the discussion becomes especially pedantic and it could have been quite a boring reading if the author did not reveal principles that underlie the framework's design. Those insights seem turn magically the framework's apparent anarchy into order, my boredom into epiphany, and author's pedantry into blessing.

Overall impression: the topics chosen are covered both deeply and fully. Explanations are always clear and complete, nothing is left for the reader to guess.

The fact that the book is about Java basics should not mislead you: beginners are not the target audience. You need a firm grasp of the language to appreciate the discussion.

Discuss book in the Saloon More info at Amazon.com




Java Security
by Scott Oaks


O'Reilly
second edition
May 2001
618 pages

Reviewed by Annmarie Ziegler, August 2001
  (9 of 10)


The everything you need to know book about Java Security. The book provides a solid foundation of the classes that comprise the Java Security model. The book starts out with an overview of the Java 2 security model and quickly moves in to details of the 'Java Sandbox'. The author explains the fine points of permissions and policy files as related to the java.security file. That's it for the basics; this book is definitely for the advanced Java programmer.

The book goes in to detail describing class loaders and byte code verifiers, explaining how they are implemented within the JVM. A brief introduction to cryptography, this is a topic that warrants it's own book. There is extensive coverage of keys, certificates and key management, including examples of how to construct key pairs - both public/private and secret keys. Additionally there are examples of how to generate message digests and use them to create and verify digital signatures. The book also covers creating and verifying signed classes using the jarsigner tool.

Advanced topics cover the use Cipher engines for encryption using JCE. There is in-depth coverage on SSL/HHTPS, but this is the only place that I found the examples lacking. And to round out the security features, there is a chapter on JAAS that gets in to both the administrative and programmatic sides.

Overall, this is an excellent book on security and a welcome addition to the serious java developer's bookshelf.

Discuss book in the Saloon More info at Amazon.com




Practical Java
by Peter Haggar


Addison-Wesley Professional
1 edition
February 2000
320 pages

Reviewed by Paul Wheaton, April 2000
  (9 of 10)


An excellent book covering some of the finer points of Java programming. I saw the author speak at a conference and he's an excellent speaker too. This book covers optimization tips and gotchas in Java. I liked the way the book was organized to I could easily skip over stuff I didn't care about or already knew about. I expect I'll refer back to this book frequently.

Discuss book in the Saloon More info at Amazon.com




Bitter Java
by Bruce Tate


Manning Publications
1 edition
April 2002
368 pages

Reviewed by Madhav Lakkapragada, June 2002
  (8 of 10)


"Bitter Java" is a "sweet book". While the previous statement sums-up my opinion of the content of the book, it wouldn't be fair not to say why. If you have the basic knowledge of J2EE components and would like to know "where to use a component" or more precisely "where NOT to use a component" this is the book you want.

The books walks you through the most common mistakes a programmer with academic knowledge would do. Okay, you did a couple of tutorials on the web, you now "feel" you have knowledge of J2EE, so what next? I would say, read this book - it will teach you how to identify anti-patterns in your code and their ill-effects. Once you identify these anti-patterns and sense the "bitterness" the authors teach you how to redo your applications using some well-known design patterns. Anti-patterns in the areas of Servlets, JSPs, Security, Caching, Server-Side Memory leaks, Connections, amd briefly XML are covered.

You don't really need a whole lot of design pattern knowledge, though a basic knowledge wouldn't hurt. Design patterns and anti-patterns are explained with example code. The original and refactered code is very well documented with appropriate remarks followed by detailed explanations.

As the moderator of the JSP forum, I have seen many questions posted on topics that were addresed in this book. Although, while taking the first steps in J2EE, you don't give much importance to anti-patterns, when you get into a production environment you must have this knowledge. While the examples in this book "may" appear basic, I think they are sufficient and clearly make the point. Glad that I was able to review this book.

Discuss book in the Saloon More info at Amazon.com




Core Java
by Horstmann, Cay S. / Cornell, Gary.


Prentice Hall PTR
5th edition
December 2000
832 pages

Reviewed by Johannes de Jong, July 2001
  (8 of 10)


If you want to learn Java and OO from scratch this book is definitely NOT meant for you. If however you want to get a deeper understanding of the Java fundamentals (yes this book has been aptly named) and how you implement OO in Java this book is a must. I kept on catching myself saying "hey that's neat" when I finally grasped an important fundamental (yes that word again) that has alluded me up to now. (I've been playing with Java for 5 months). What I especially liked about the book is that the authors explained why a specific solution was chosen. They did not just leave me in the dark. At times they even suggested alternatives.

My complaints:
They waste unnecessary pages with code that hardly gets discussed. A simple reference to the CD would have been enough, heck they even supply a great editor (TextPad) to read and compile it with. I still had to correct quite a few examples manually after I'd downloaded the latest version of their code. Surely they could have updated it ? The Core Java Web page can be found at Core Java. The rest of Mr. Hortsmann's site is also worth a visit.

"A solid foundation to improve your basic Java skills".

Discuss book in the Saloon More info at Amazon.com



Prentice Hall PTR
5th edition
December 2000
832 pages

Reviewed by Mary Jane Swirski, August 2002
  (8 of 10)


Beginner? Then this book is for you! I am a COBOL programmer & found this book very easy to read. Concepts are easily explained then example code is provided, great for anyone new to Java or OO concepts. I would recommend this to any green-horn who is trying to learn the java language without the benefit of an professional instructor. The only downfall of the book: it provides no exercises, and I fervently believe that to become a good programmer one must practice their coding.

Discuss book in the Saloon More info at Amazon.com



Prentice Hall PTR
5th edition
December 2000
832 pages

Reviewed by Paul Wheaton, January 2000
  (2 of 10)


When I had about eight months of Java experience, I read the Core series. After reading Just Java 1.1, the core series were awful by comparison. They had a lot of errors coming from taking a book on 1.0 and sticking in a few 1.1 paragraphs and calling it a 1.1 book. I don't know if the 1.2 series is better - I haven't bothered to look since Just Java 1.2 works so well for me.

Discuss book in the Saloon More info at Amazon.com




Learning Java
by Patrick Niemeyer, Jonathan Knudsen


O'Reilly
1 edition
May 2000
720 pages

Reviewed by David Vick, November 2001
  (8 of 10)


A very good book for learning the basics of the Java language. The biggest problem I had was with the suggested audience; the target audience should more appropriately be for programmers coming from a C or C++ background. The authors suggest you be familiar with the basic C syntax, but the frequent references in the text to C and C++ make it more of a requirement then an option.

The book covers a wide range of topics and gives an excellent (if brief) introduction to almost all aspects of Java programming. For those looking for a good introduction to the language this is an excellent choice. Individuals looking for more detailed coverage of fewer topics should look elsewhere.

One of the best things about this book for experienced programmers is the fact that it does accept that you know loops and other control structures and does not spend any more time on them other than necessary to point out differences between Java and C/C++. This is a relief from those books that beat the subject to death for 3 chapters even when their target audience is experienced programmers.

This book is an excellent introduction to the language for someone interested in finding out what Java has to offer as a programming language. The topics are written clearly and there are plenty of small, easily understood code samples throughout the text. The authors' style is clear and not too technical, overall it makes for an easily understood and comprehensible book.

Discuss book in the Saloon More info at Amazon.com




Thinking In Java
by Bruce Eckel, Bruce Eckel


Prentice Hall PTR
third edition
December 2002
1119 pages

Reviewed by Junilu Lacar, March 2003
  (9 of 10)


This edition is updated for the Java JDK 1.4 and includes significant changes over the previous edition.

New and expanded discussions touch on assertions, I/O and new I/O, logging, JavaDoc comments, exception handling, JNLP and Webstart. The 2nd edition's chapter on distributed computing, which included EJBs, Servlets and JSPs, RMI, and JNDI, and the appendix on JNI are gone and moved to another book on Enterprise Java.

Staying abreast of current development practices, Eckel introduces brief discussions on using Ant for automated builds, and version control using CVS. He also puts more emphasis on unit testing, replacing comments and System.out.println statements from previous editions with code that uses his own unit testing framework in most of the book's sample code. The source code, which you can download from his website, also comes with Ant build files.

The CD that comes with the book contains a multimedia course called "Foundations for Java" which you should go through before reading the book. Unfortunately, the CD I got was damaged during shipping and I haven't received a replacement as of this writing.

One minor complaint is that the typeface in the code and tables are not very readable. In the tables, the number 0 looks like a lowercase o. Overall, I think Eckel did a good job in keeping the book up-to-date and relevant to the needs of beginning to intermediate Java programmers who would benefit from this book.

Discuss book in the Saloon More info at Amazon.com



Prentice Hall PTR
second edition
May 2000
1128 pages

Reviewed by Kathy Sierra, May 1999
  (8 of 10)


My favorite book for those coming from a C++ background. Bruce Eckel explains complicated things about Java with the casual clarity of a conversation between two smart colleagues. You'll spend a lot of time reading this book. I must get Bert his own copy; he keeps going after mine.

Discuss book in the Saloon More info at Amazon.com




Java Collections
by David A. Watt, Deryck F. Brown


Wiley
1 edition
March 2001
566 pages

Reviewed by Margarita Isayeva, February 2002
  (7 of 10)


The title of this book, "Java Collections", is somewhat misleading. The subtitle - "An introduction to Abstract Data Types, Data Structures and Algorithms" - reveals what the book is really about. It is positioned as "a first course in algorithms and data structures". It accustoms with basic Abstract Data Types philosophy on examples of set, list, map, queue, tree and a few others. For each ADT first its contract is defined - in plain English. For a set it goes as: it must be possible to add or remove a member of a set;it must be possible to test whether a value is a member of a setit must be possible to make a set empty... Then the same contract is represented as a Java interface, and several data structures and algorithms implementing it are provided. The authors show how the choice of underlying implementation, affects operation speed. To indicate algorithm efficiency O-notation is used, and it is introduced on almost an intuitive level, with very light math.
A reader is expected to possess only basic knowledge of Java. Writing style is easy; though professional programmers seeking to refresh their knowledge of algorithms, for whom the book is recommended, can be irritated by euphemisms like "a date in the ISO format i.e., 'y-m-d'".
If your goal is to learn Java Collections framework - well, there is about a page for each of its main interface. If you want more, get another book. :)

Discuss book in the Saloon More info at Amazon.com




Java in a Nutshell
by Flanagan, David.


O'Reilly
fourth edition
March 2002
992 pages

Reviewed by Paul Wheaton, January 2000
  (5 of 10)


Review is for a previous edition Usually the O'Reilly books are hard to beat. And I'm a big fan of UNIX in a Nutshell. But I haven't found much use for this book so far. I'm glad I have it on my shelf because there has been a time or two that it had info that the others didn't. Most of the book is supposed to be reference - but my "The Java Class Libraries" books are far superior in this department.

More info at Amazon.com




The Java Tutorial
by Mary Campion, Kathy Walrath


Addison-Wesley
second edition
March 1998
964 pages

Reviewed by Kathy Sierra, May 1999
  (10 of 10)


My favorite book for Java beginners with some prior programming experience. My copy has more dog-ears than a pack o' hounds.

Discuss book in the Saloon More info at Amazon.com




Exploring Java
by Niemeyer,Patrick / Peck, Joshua.


O'Reilly
1 edition
June 1996
426 pages

Reviewed by Bodie Minster, February 2001
  (2 of 10)


This book targets programmers that want to add Java to their repitoire. It spends very little time covering the language syntax, operators, data types, and so on. It jumps right in and covers subjects ranging from creating Zip files to UDP sockets. Some subjects are treated very superficially, such as RMI and JavaBeans. Some notables that are not covered at all include JNI and JDBC. AWT, Threads, Sockets, I/O and many other subjects are covered in-depth. What this book lacks in tables and diagrams it makes up for in code snippets and examples. There are no exercises, though, which is a letdown. Overall, it is well-written and easily understandable by anyone with prior programming experience.

Discuss book in the Saloon More info at Amazon.com




Java Swing
by Marc Loy, Robert Eckstein, Dave Wood, James Elliott, Brian Cole, Robert Eckstein, Marc Loy, and Dave Wood


O'Reilly
second edition
November 2002
1280 pages

Reviewed by Jason Menard, April 2003
  (7 of 10)


"Java Swing" is an in-depth look at the features and components of Java's popular Swing API. The much-anticipated second edition of O'Reilly's classic brings the book up-to-date with the changes made in SDKs 1.3 and 1.4. Each Swing component is covered in detail, providing information on constructors, methods, and properties. There is of course a plethora of example code clearly demonstrating how to use the various components and features.

While "Java Swing" is quite a hefty book, it does not cover the Java event model introduced in JDK 1.1, the AWT layout managers, or relevant AWT components such as Component that are subclassed by Swing components. Instead references are given to pdf files containing chapters of O'Reilly's out-of-print AWT book. While this may have been an acceptable omission for the first edition in 1998, where it might be assumed that developers had some experience with AWT, I do not feel this is a valid assumption today.

If you can look past the book's omissions, or if you have a companion reference covering those features, "Java Swing" has much to offer and will serve as a treasured reference. If you are unfamiliar with AWT and looking to learn how to develop user interfaces in Java, you may wish to look elsewhere first.

Discuss book in the Saloon More info at Amazon.com



O'Reilly
1 edition
September 1998
1252 pages

Reviewed by Thomas Paul, March 2001
  (8 of 10)


For visual programming, Swing is a vast improvement over the AWT. Using Swing you can create virtually any user interface. At the same time, Swing is much more complex and contains far more components than the AWT. This book provides an in-depth introduction into the complexities of Swing. The authors start with a discussion of some of the features of Swing and the Model-View-Controller architecture which helps to make Swing so much more powerful than the AWT. The authors then discuss some of the simpler Swing objects (JLabel, JButton) leading us into a deeper understanding of the Swing architecture and preparing us for the more complex objects that follow. Each Swing class (JLabel, JInternalFrame, JDialog, JTree, and more) is explained in detail with numerous examples for each class. As the topics become more complex, the authors spend more time on the topic and provide more examples. The authors spend 6 chapters explaining the Swing text framework and make this complex topic almost simple to understand. The authors are not content to merely explain how to use the Swing classes but they spend time showing us how to create our own objects derived from the Swing classes. Java Swing is a huge book (more than 1,200 pages), especially by O'Reilly standards, but there are no pages wasted on a "quick reference". The authors have provided us with a well written, complete, easy to understand, and ultimately indispensable guide to Java Swing.

Discuss book in the Saloon More info at Amazon.com



O'Reilly
1 edition
September 1998
1252 pages

Reviewed by Paul Wheaton, January 2000
  (8 of 10)


Widely considered the best book on Swing. With the help of this book, I've made a mountain of my own lightweight components and have exploited a great deal of Swing. I have another Swing book that came out before this one did, but it just gathers dust now.

Discuss book in the Saloon More info at Amazon.com




Java NIO
by Ron Hitchens


O'Reilly
1 edition
August 2002
312 pages

Reviewed by Valentin Crettaz, November 2002
  (8 of 10)


The New Input/Output (NIO) packages of the Java 2 platform introduce several long awaited advanced I/O features for developing high-performance and large-scale Java applications. It is not unsafe to say that these new capabilities bridge the gap between Java and other natively compiled languages.

The author starts by giving some insights on some system-level I/O services before delving into how low-level features are abstracted by NIO in a portable way. He assumes the reader to be fairly comfortable with Java and common I/O concepts, that is, the book should not be seen as a tutorial on Java I/O.

The book dedicates one chapter to each new feature, namely low-level buffer management, scalable networking and file channels, multiplexed I/O using selectors, and character set encoding/decoding. As last, the author presented a Regular Expressions API that brings Perl-like capabilities into the Java language, as a feature that is often used when performing I/O operations, although it is not strictly related to I/O.

This is a first book on Java NIO, which is a well-written resource and contains a several concrete and ready-to-use examples illustrating various key concepts of the NIO packages.

Discuss book in the Saloon More info at Amazon.com




Java and SOAP
by Robert Englander


O'Reilly
1 edition
May 2002
276 pages

Reviewed by Ajith Kallambella, April 2003
  (6 of 10)


Overview -
SOAP is what makes the Web Services clock go around. In fact, SOAP can easily be used as a stand-alone channel without incurring the overheads of publish-find-and-bind cycle apparent in Web Services. Java's ever growing XML support makes it a language of choice for anyone considering implementing SOAP.

Why you should read this book -
Whether you are writing a new SOAP service or simply using an existing one, understanding what happens under the bonnet helps make your system more robust.

What this book covers -
This book covers almost everything you have to know about how Java supports the technology - core APIs, SOAP encoding, structure of SOAP messages, attachments, platform interoperability issues and some nice guidelines. It also includes some getting-started examples with two different SOAP servers- Apache and GLUE ? to help the reader understand how SOAP implementation differs. There is some introductory material covering JAX-RPC, JAXM, Apache Axis and WSDL. The chapters are well organized although the writing lacks reader-friendly approach.

Cons -
The book came out in May 2002 and hence a few things are out of date including SOAP spec and Apache implementation. Examples seem rather trivial and lack depth. Advanced SOAP programmers or those considering enterprise integration will be disappointed. Coverage on .NET interoperability is a far cry from even being introductory. I hope the next version of the book will adequately address real integration issues such as performance, transactions, and security.

Discuss book in the Saloon More info at Amazon.com




Bluetooth for Java
by Bruce Hopkins and Ranjith Antony


Apress
1 edition
March 2003
352 pages

Reviewed by Mark Spritzler, April 2003
  (6 of 10)


Last year we had some chickens on the farm eat some bad feed and it turned their teeth blue. Ol Doc Martin called it a bad case of bluetooth.

This book is not about some dental problems. It is about a new type of wireless networking that uses radio waves for two or more devices to communicate.

The first four chapters explain Bluetooth. Its Java APIs and how it all works. While I believe I learned how to discover available devices in the area, connect and discover their services, I feel that the writing of these chapters could have been clearer. I found it difficult and tedious to comprehend the concepts.

In chapter 5 they give two very good examples of Bluetooth and Java in action. they demonstrate all the aspects of setting up Bluetooth connections and finding out the capabilities of devices in the area. the only downfall of this chapter is that their diagram pictures are out of order and don't match their descriptions.

The later chapters start to delve deeper into more specific types of Bluetooth environments and products in the market. Such as using a Bluetooth simulator, Bluetooth security, micro blue target, Ericsson Blipnet, and Bluetooth with Jini.

Overall, I was disappointed. I thought I would come away with great new knowledge. Instead I came away with a confused look on my face. I couldn't grasp the concepts. Maybe it was at a higher level than Intermediate, or maybe it was just me.

Discuss book in the Saloon More info at Amazon.com



Apress
1 edition
March 2003
352 pages

Reviewed by Thomas Paul, July 2003
  (9 of 10)


Bluetooth is a short range wireless communications protocol. JSR-82 is an API for Java that allows Bluetooth enabled devices talk to each other using Java programs. Using Bluetooth, a PDA could talk to a printer to get a document printed or two Bluetooth enabled PDAs could exchange Java objects. Even if you know nothing about Bluetooth or wireless communications, this book will give you enough information to get started.

The book starts with an examination of Bluetooth and the terminology you need to understand Bluetooth enabled devices. It then gets into the basics of the Bluetooth API for Java and developing programs using J2ME MIDP. Chapters cover creating a Bluetooth print server, passing objects between Bluetooth devices, and securing messages between devices. The authors discuss the PC software available to simulate Bluetooth devices so that you can develop an application without having two Bluetooth devices sitting on your desk. The final chapters covers topics such as Jini and Ericsson BlipNet. The book contains many well commented code samples demonstrating how to use the Bluetooth API.

The book is very clear and concise. It reads as if it was written by a couple of enthusiastic Bluetooth developers anxious to share the technology. And they do an excellent job of doing exactly that. I started the book knowing almost nothing about Bluetooth but now I feel confident that I can develop Bluetooth pplications. If you have any interest in Bluetooth then I can recommend this book as an excellent resource.

Discuss book in the Saloon More info at Amazon.com




XML and Java
by Maruyama Hiroshi et al


Addison-Wesley Professional
second edition
May 2002
688 pages

Reviewed by Andrew Monkhouse, December 2003
  (9 of 10)


Java developers who need to learn how to work with XML technologies will appreciate this book.

The introductory chapter, lightly touches on basics of XML. From then on the book works through the major APIs a Java developer will use to work with XML. The examples start off as a very simple XML document with a very basic Java application developed to work with it. Then the document and/or the Java application are enhanced to provide more complex scenarios and solutions. Common problems are discussed, as are their solutions.

I was pleased to see that the authors have considered the entire life cycle of working with XML documents, rather than assuming the user know how to get an XML document to work with. So no matter what situation the reader finds themselves in they will find an applicable section in the book.

Having so many authors does mean that there are variations in writing style, however it appears considerable effort has gone into minimizing the variations. One of the major areas I noticed was some authors had line numbers next to the sample code which were referenced in the chapter. Other authors did not dissect their code. However all code samples are easy to read, and the text going with them is of high quality, so I do not believe that this would cause a reader any problems.

I have no hesitation in recommending this book to anyone who needs to work with XML from within a Java program

Discuss book in the Saloon More info at Amazon.com




Hardcore Java
by Robert Simmons Jr


O'Reilly
1 edition
January 2004
400 pages

Reviewed by Valentin Crettaz, May 2004
  (5 of 10)


My first thought when I saw this new book on O'Reilly's web site was: "Well, there must be some really cool Java hacks hidden behind this rather evocative title."

Basically, it's one of those books where you expect the next page to actually delve into the real matter and give you some crispy details. My personal impression after finishing it was that the content was a little lightweight for deserving to be qualified as "hardcore", but maybe I'm being too harsh. The author handles a good deal of "advanced" topics, such as the effective use of Collections and nested classes, constants, immutable types, reflection, proxies and the four different flavors of references. Also qualified as hardcore, the novelties introduced by the upcoming Java 1.5 release are also part of the story...

I have always regarded O'Reilly's books as high-quality work (and I still do), but I have never been able to find 50 typos in any of their books before. I'm inclined to interpret this fact as if the book had been rushed to press to be on the shelves before JDK 1.5 comes out. I just wish the book had been more thoroughly proofread.

On a more positive note, I'm quite sure medium and advanced Java programmers will be able to distill valuables tips and tricks from this book. On the companion web site, the author also provides the sources of all the examples illustrated in the book.

Discuss book in the Saloon More info at Amazon.com




Decompiling Java
by Godfrey Nolan


Apress
1 edition
July 2004
280 pages

Reviewed by Valentin Crettaz, October 2004
  (8 of 10)


Fascinated by the Java lady? Ever wanted to ask her out but never dared to? Get this book and take a shot. After discussing some legal and moral issues and telling you how to protect yourself, this book will teach you how to approach her and ask her out politely. Then, it will delve into the most intimate details of her bytecode attributes and show you how to manipulate them efficiently. Also, the author briefly describes a couple of free and commercial tools you can use to play with her. The book goes on describing techniques you can exploit to protect her sources from being seen by anyone. Such techniques include: obfuscation, encryption, server-side execution, digital rights management, fingerprinting, native implementation and many more. The second half of the book is fully dedicated to designing and implementing a working Java decompiler from scratch using the JLex and CUP (i.e., Java implementations of lex and yacc).

Basically, I very much appreciated the way I have been introduced to this wonderful and charming lady. Our chat was both enjoyable and enlightening. However, the date was over when the whole thing started to get interesting and I admit that 250 pages left me hungry. I would have liked to see a couple more concrete examples discussed and analyzed in minute details. Nonetheless, this book is a very good introduction to the topic and would satisfy both beginner and medium Java developers willing to peek beneath the lady's bytecode veil.

Discuss book in the Saloon More info at Amazon.com



Apress
1 edition
July 2004
280 pages

Reviewed by Lasse Koskela, September 2004
  (7 of 10)


"Decompiling Java" is an interesting piece of work. In just 250 or so pages, you'll go through legalities related to decompiling Java code, learn the basics of Java's class file format, get a brief run-down of tools available for decompiling and obfuscating Java code, all the way through different methods employed by obfuscation tools. Finally, Nolan goes through the design of a basic Java decompiler implementation using JLex and CUP open source compiler compiler tools.

The brevity of the book is both its best and worst characteristic. It's great because I certainly wouldn't have wanted a bible on copyright and patent laws in different parts of the world, but it's unfortunate because the topic you're interested in is bound to be slightly too superficial or detached from the rest of the book. For example, I would've liked to read a lot more about the actual class file format and the internals of a JVM in the book itself instead of having to read from a specification on the web. On the other hand, the author managed to light some bulbs in my head along the way and I actually enjoyed reading his text - especially the chapter about creating a decompiler using JLex and CUP (which I've also found a bit too intimidating to actually look into).

In summary, "Decompiling Java" is a good overview of decompilation in Java and it has a couple of real gems inside, but if you're looking for a manual for dissecting class files or the JVM, it might not the book you're looking for.

Discuss book in the Saloon More info at Amazon.com




Java Garage
by Eben Hewitt


Prentice Hall PTR
1 edition
August 2004
480 pages

Reviewed by Thomas Paul, November 2004
  (4 of 10)


Headache. That is what I got when I picked up this book. Too cute. Too many short sentences. Sentence fragments. Headache. Recipes. My 12-year-old daughter's instant messages.

First thing to note is this is a beginner's book although you won't find that in the description. Second is that I blame this on "Head First Java". You know when a successful TV show comes out and the other networks copy it? You know how they never do it right? It's as if someone saw "Survivor" and decided it was a success because people ate bugs so they made a show where people ate bugs to win. "Head First Java" uses humor to help focus the mind on difficult concepts. This book uses humor to be cool(?), funny(?) but most of the time it is just annoying, which is a shame because there is some good information and some of it is well presented. I assume the author is trying to be amusing and be less like a traditional technical book but he fails at the former and overachieves at the latter.

At one point in the book the author suggests that if you still have questions that you should get Zoloft and take up a hobby like gardening. I think it's a little odd for an author to suggest that his readers are in need of anti-depressants but if forced to read this book, it may not be a bad idea. cya.

Discuss book in the Saloon More info at Amazon.com



Prentice Hall PTR
1 edition
August 2004
480 pages

Reviewed by Johannes de Jong, November 2004
  (5 of 10)


It's becoming a trend in computer books to try and put a personal "stamp" on the book by adding humor and/or personalized "information". The danger of doing so is that the reader might end up not liking the book because of this "extra baggage". This was the case for me with Java Garage, which actually is a pity because once I looked past it, I found some very useful information, like the Java Development tools and the FAQ chapters for instance, but I'm afraid that overall I'm not very positive about this book.

I personally do not much care for a book that compares computer languages. Mr. Hewitt regularly compares Java with C#. Another "sin" in my eyes is when the author starts explaining something and then tells me that the how's and why's will be explained in the next book. Why bother to mention it at all then.

More time could also have been spent on the layout and/or editing. The book is full of errors and the code because of the tabbing is downright unreadable at places.

This book gets great reviews from others so it might all come down to me not liking the format, but I honestly can say that I can not recommend anybody to spend their hard earned cash on this book.

Discuss book in the Saloon More info at Amazon.com




Beyond Java
by Bruce A. Tate


O'Reilly
1 edition
September 2005
200 pages

Reviewed by Mark Spritzler, November 2005
  (8 of 10)


First I have to laugh. Because this is one of those books where the author is either trying to get people mad, just to see their reactions, or they really know what's going on and are the first to say so, and therefore be burned at the stake. Or they are just morons who have no clue. I think after a number of reviews have come in for this book, I think you will find all of them cover the above three.

First, this book makes me think and makes me want to look further into Ruby on Rails and continuation servers. They sound interesting. Second, some of the things Bruce says in this book seem to contradict themselves when it comes to him sounding off at Java's shortcomings.

First he says he doesn't like the "verbosity" of generics (Java 5.0), then he talks about having to use Iterators and the code you have to write to loop through Collections (Java 1.4). Meaning that for his argument, he'll use Java with version 1.4, and in another he'll use Java 5.0 But only to "prove" his argument. He jumps back and forth. I can do that in any language, use a fault in a much older version to use in an argument about the version today.

I think some of his "pluses" for using Ruby is because he hasn't used a dynamic typed language before, and not seeing the trade-offs and other maintenance problems that come with dynamic typing. We'll have to see.

I also respect Bruce, because I really enjoyed his Better Faster Lighter Java book.

Buy this book for the entertainment value from either side, the I want to beat him up, to I completely agree with him 100%. Either way you will have fun reading it.

Discuss book in the Saloon More info at Amazon.com




Java Performance
by Charlie Hunt, Binu John


Prentice Hall
1 edition
October 2011
720 pages

Reviewed by Deepak Bala, December 2011
  (9 of 10)



If you have the need to fine tune your java application / VM then look on further. This book covers in great detail how to look for problem areas in a variety of environments. The perspective that the authors have taken is varied. They teach you to measure performance at different levels - OS / Application / VM etc and also teach you to benchmark code. You also get a quick look at high level JVM architecture.

The chapters on GC and benchmarking were interesting and added some insight into those areas. I also enjoyed the introduction of tools/plugins which I previously did not know existed. For example I never knew that java JIT compiler activity can be monitored through a tool. Most tools work across operating systems like Windows / Linux and Solaris.

The only downside that I found while reading this book is that there are plugs to Sun/Oracle products peppered throughout the book. For example references to Solaris / Glassfish / Oracle Solaris studio / Netbeans etc. But since this is part of the java series I guess that is to be expected. I would recommend this book to a colleague.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com




Java Programming
by Poornachandra Sarang


McGraw-Hill Osborne Media
1 edition
January 2012
672 pages

Reviewed by Mohamed Sanaulla, March 2012
  (9 of 10)



Caution: Dont get bogged down by the number of pages. As The books is more of hands on, most of the content is code samples and their explanation. This book explains the concepts by using examples. This is exactly how one can learn the language and its vast libraries. Each topic is supported by an well explained example, and the examples are not trivial. Something that which reminds me of examples in Core Java book.

The book starts with Arrays, as the basic syntactical chapters are available online. Topics like Generics are given their due share (unlike in Core Java book, very less of Generics was covered). Interesting to see that advanced concurrency related concepts are also covered and not to forget the new features introduced in Java 7 are also covered as and when required. The "Notes" and "Cautions" are quite useful and informative.

Reading the book doesnt bore you provided you sit with the Terminal and a Editor open. I would strongly recommend to code the examples and try to compile and run them. As always one should befriend the API and documentation for help in the long run. Anyone looking for books other than Head First Java can get a copy of this book.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com




Wireless Java : Developing with Java 2, Micro Edition
by Jonathan Knudsen


Apress
1 edition
June 2001
226 pages

Reviewed by Thomas Paul, July 2001
  (9 of 10)


The latest revolution in Java (the micro revolution) has begun within the release of J2ME. However, the revolution has just started and most of the specification is still being defined within the Java Community Process. The one part of J2ME that is available to developers is the Mobile Information Device Profile (MIDP), the specification for devices such as pagers, mobile phones, and small PDAs. This is the focus of this excellent book by Jonathan Knudsen. After a brief history of J2ME, the author introduces us to MIDlets, which are the applets of Mobile Information Devices. Comparing J2ME with J2SE, the author shows us how to leverage our Java skills to make coding for MIDP devices a breeze. Each step of the way, the author uses working code examples to demonstrate the capabilities of MIDlets. Starting with developing forms, the author explains how to interact with the user and code event handlers. He then demonstrates how to interact with servlets over the Internet using HTTP. Maintaining persistent storage, handling cookies, and programming a game interface are all demonstrated. Performance tuning, which is a critical issue on MIDP devices, is discussed. As long as we are going to be on the cutting edge, a chapter on XML is included. Security and cryptography are critical issues on MIDP devices. Knudsen is the author of "Java Cryptography" and as expected he does an excellent job with these topics. All of this information is well covered in a concise 175 pages.

Discuss book in the Saloon More info at Amazon.com




Java Cookbook: Solutions and Examples for Java Developers
by Ian Darwin, Ian Darwin


O'Reilly
second edition
June 2004
862 pages

Reviewed by Valentin Crettaz, August 2004
  (9 of 10)


Ever gotten tired of wading through endless reference books or crawling the web seeking for small code snippets that solve common and ever-recurring problems? Don't look further, this book is for you. In this second and revamped version of the Java Cookbook, you will find tons of very valuable resources for your everyday programming tasks. The author, a long-time practitioner, adopts a "learn-by-example" approach by providing small code recipes which cover almost all APIs from the 1.4 version as well as some new killer features of Java 5.

The number of subjects the author delves into is truly impressive. Apart from the traditional topics like effective string manipulation, threading, I18N and L10N, GUIs, RMI and networking, I/O and file system operations, and many more, the author also focuses on external devices and serial/parallel port programming, electronic mail, reflection and introspection, graphics and sound, pattern matching, generics, autoboxing, packaging and how to use Java with other languages.

I really enjoyed reading this very helpful resource and I would definitely recommend it to Java programmers of any level in urgent need of some code ammo to put in their backpack.

Discuss book in the Saloon More info at Amazon.com



O'Reilly
1 edition
January 2001
882 pages

Reviewed by Cindy Glass, October 2001
  (8 of 10)


This book assumes that you know some Java, but that you have a particular problem that you need to solve. You could either post the question at JavaRanch, or look it up in this book. The format is great! It is organized with a specific problem, a quick explaination of the solution to the problem, and an in detail discussion of the solution including samples and complete code as needed.

The topics range from fairly simple things such as dealing with Strings, to complex things such as using RMI, XML, sending e-mail with Java etc. His overview of Servlets and JSP was great.

There was a lot of code that you could borrow and use, but no CD with the book, however it was all available on his website.

On the whole, this book will be one of the ones that gets references over and over. It has something for everybody.

Discuss book in the Saloon More info at Amazon.com




Jython for Java Programmers
by Robert W. Bill


Sams
1 edition
December 2001
496 pages

Reviewed by Carl Trusiak, May 2002
  (8 of 10)


Jython is definately the scripting language of choice for Java Programers. This book does an excellent job giving you the fundamentals to perform most tasks with it. It covers database access, servlet programming, embedding Jython in Java Applications etc. If you need to add scripting for any reason, Jython should be your choice and to learn it, this is your book.

Discuss book in the Saloon More info at Amazon.com




Java 2 Exam Cram
by Bill Brogden,


Coriolis Group Books
second edition
June 2001
448 pages

Reviewed by Matthew Phillips, November 2001
  (8 of 10)


Second Edition is here and the title says it all. This book truly is an exam cram; do not expect to see anything new.

The chapter organization is similar to the larger, more detailed certification study manuals, making it a nice complement to any one of them. There are just enough details to refresh your memory. That in itself will help point out your weak areas. The review questions are good, but the second edition still has the annoying format of having the answer immediately after the question. The practice exam at the end was not quite as hard as I would have liked.

Overall, I think this title is a good buy if you are looking for a quick review of the exam topics.

Discuss book in the Saloon More info at Amazon.com



Coriolis Group Books
1 edition
April 1999
400 pages

Reviewed by Bill Compton, March 2001



This book provides a solid foundation for SCJP2 preparation for programmers, especially those familiar with C or C++. (If you're new to programming, then start with a more basic book, like Peter van der Linden's Just Java 2.) The writing style is brief and to-the-point, which makes the book a quick read. However, if you decide to use the book as your primary resource, you should supplement it with an additional text, such as the "RHE" book to reinforce areas where you feel weak. I suggest marking key statements and then re-reading these several times as you get close to the exam.
Each chapter has very helpful study questions at the end that help test your understanding of the chapter. However, the layout of the questions makes self-test a little difficult because the answer appears immediately below the question, requiring the reader to clumsily cover the answer while considering the question. (Suggestion to the author / publisher: In the next edition, put questions on the right-hand page and corresponding answers on the following left-hand page. It'll take a few more pages but greatly simplify using the questions.) Also, there is a sample test at the end of the book that provides a pretty good final "self-check" to assess readiness.

Discuss book in the Saloon More info at Amazon.com




Java 2 Exam Notes
by Phillip Heller


Sybex
1 edition
January 2000
258 pages

Reviewed by Annmarie Ziegler, November 2001
  (6 of 10)


Just as the title implies 'Java Exam Notes' is not a complete SCJP study guide, so don't expect it to be. Think of it as a companion book to your main study guide.
The book is written for those who have already begun preparing for the exam and are now looking for a book for further review. Although the book does a good job of covering all the objectives of the exam, it does not go in to detail on any one topic. The reader must be familiar with the topics and must have a good understanding of them to effectively use the book.
The format of the book is to state the objective, give the key topics and concepts and then provide some sample questions. The sample questions are meant to reinforce your knowledge of the reviewed concepts, and are therefore not the typical certification sample questions that people are used to seeing. I was a bit disappointed in the number of errors in the book, so I recommend going to the Sybex site to check the errata pages before reading.
For those people who don't want to prepare their own study notes, then this book is for them. Although I feel the book is helpful in preparing for the exam, I do believe that if one took the time, you could create the same type of notes...okay, not so nicely typed and presented, but the content would be the same.

Discuss book in the Saloon More info at Amazon.com




Applied Java Patterns
by Stephen Stelting, Olav Maassen


Prentice Hall PTR
1 edition
January 2002
608 pages

Reviewed by Michael Ernest, March 2002
  (9 of 10)


If you're unsure how to apply design patterns to Java, this book provides a solid, methodical, but gentle introduction to the practice.

This guide uses the classic design patterns first decribed by the GoF book. For each pattern, the authors provide a fresh motivation (writing a Personal Information Manager application), and rationale for matching a program feature or function to an appropriate pattern. The book seems best suited for those who need to learn definition and application in Java by example.

There's no CD-ROM; bummer. At a $45 list price, I think code-intensive books should offer one. This code is available by FTP, but, since my local firewall prohibits that, I find fault with the publisher for the inconvenience.

In the interests of full disclosure, I know Stephen and Olav personally. It's a pleasure to see them do what a number of us have been avoiding. This book needed to be written, but doing it well requires the diligence of a methodologist and the patience of a researcher. They've done very good work despite the tedium of building the book. Any aspiring program designers will find their time reading it well rewarded.

Discuss book in the Saloon More info at Amazon.com




Java Tools for Extreme Programming
by Richard Hightower, Nicholas Lesiecki


Wiley
1 edition
December 2001
544 pages

Reviewed by Frank Carver, February 2002
  (9 of 10)


You can happily ignore the main title of this book. Sure there's a nod toward extreme programming, but that's not what this book is really all about. This book is a fine introduction to a whole bunch of really useful tools to boost your Java and especially J2EE programming. And all the tools can be downloaded, source code and all, for free! There are too many tools to list here, but they include the best-of-breed Ant build system, JUnit, HTTPUnit, ServletUnit and Cactus test frameworks, load and performance analysers and some great libraries for interacting with other servers.

Two major test cases are carried through the book to show the benefits of each approach. Each tool covered gets at least a chapter of tutorial, and some of the major ones also get an appendix of API and configuration information.

This book was almost too useful to review. It's been open on my desk from almost the minute I got it and has greatly improved many aspects of my development process. If you want to get up to speed quickly and practically on a load of useful, powerful, tools - get this book. Everyone I've shown it to has wanted their own copy ...

Discuss book in the Saloon More info at Amazon.com




Enterprise Java with UML
by CT Arrington, CT Arrington


Wiley
second edition
June 2003
512 pages

Reviewed by Thomas Paul, June 2003
  (7 of 10)


This book takes you through the development of an application from proposal to implementation. In alternating chapters the authors explain the use of UML for a particular step in the development lifecycle and then demonstrate what they just explained to develop a sample timecard system. The best part of the book, which is not significantly different than the first edition, is the first half in which the authors discuss requirements gathering and object oriented analysis. The book is worth the price for this first part alone.

The second half of the book has been expanded to discuss new J2EE technologies. The chapters on evaluating technologies are good as far as discussing how to evaluate technologies but the actual analysis is weak as they ignore candidate technologies such as Struts in favor of their own homegrown HTML production framework. They also fail to explain why EJBs are a better choice for their sample application than simply using Servlets/JSPs/JDBC. The final section on design gets bogged down with too many pages of code listings and not enough explanations for the code.

Arrington has done a very good job explaining UML although some familiarity with UML notation (or at least a handy manual) would be helpful. If you already own the first edition then you can ignore this edition. If you don't own it then you will definitely want to read this book. This is a must have book for any Java architect/developer doing OOAD.

Discuss book in the Saloon More info at Amazon.com



Wiley
1 edition
January 2001
480 pages

Reviewed by Thomas Paul, February 2001
  (9 of 10)


Trying to develop a Java application without first developing a model can lead to a poorly designed application that fails to fulfill the needs of users, lacks reusability, and is difficult to maintain. The Unified Modeling Language (UML) was developed as an open standard notation to assist developers in modeling OO applications. As enterprise developers we are finding that we are expected to be able to design applications using the UML, explain UML diagrams to our users, or be able to develop applications from UML diagrams. The UML can be difficult and confusing to use and many of the books available fail to clearly explain the proper use of this development tool. "Enterprise Java with UML", by CT Arrington is an excellent introduction into the complexities of the UML. Arrington takes us through the entire lifecycle of a sample EJB application (a timecard system) from requirements gathering to implementation. In alternating chapters he explains the use of the UML (use cases!, sequence diagrams, class diagrams, etc.) for that step in the development cycle and then uses what he just explained to develop the timecard system. Along the way we make technology decisions, develop our design, and ultimately convert our design into actual code. By the time we are done the UML has become a new tool in our toolbox. Arrington has done a very good job explaining the UML although some familiarity with UML notation (or at least a handy manual) would be helpful. This is a must have book for any Java developer wishing to learn the UML.

Discuss book in the Saloon More info at Amazon.com




Design Patterns Java Workbook
by Steven John Metsker


Addison-Wesley Professional
1 edition
April 2002
496 pages

Reviewed by Matthew Phillips, July 2002
  (8 of 10)


If you are a beginner to design patterns, this book is not intended for you. This book is intended as a supplement to on of the other design pattern books and in particular the GoF book. If you have read one of the other books and feel comfortable that you can recognize the patterns when you come across them and feel that you have developed a solid foundation then you do not need to read further. This book is not for you.

If you are like me and found that you need to read more to build your design patterns foundation then this book is excellent for that. I found that the best use for me was to read a pattern in the "GoF" and then read the pattern in this book.

I did find a few problems with the book. Some of the exercises seemed a little off track for a design patterns book, although they were still good exercises. There were also a few typos. The book is a pretty quick read with lots of diagrams and sample code.

Discuss book in the Saloon More info at Amazon.com




Java Design Patterns: A Tutorial
by James W. Cooper


Addison-Wesley Professional
unknown edition
February 2000
352 pages

Reviewed by Thomas Paul, May 2001
  (7 of 10)


Any Java developer who has read "Design Patterns" by Gamma, et al, has probably tried to relate the patterns discussed to Java programs. This book provides a linkage between "Design Patterns" and Java. Each of the 23 patterns discussed in "Design Patterns" are covered in this book using an example of a Java Swing program. The book opens with a brief discussion of design patterns in general and a quick review of UML, which is used throughout the book. The book then has a chapter for each of the 23 patterns. The book then finishes with an overview of Swing and a case study demonstrating how design patterns might be used in an actual development project. Although the author says that this book is not meant to be a companion book to "Design Patterns," I found that is actually the best way to use this book. Reading the description of each pattern in "Design Patterns" followed by reading about the same pattern in this book helped me to understand each pattern in a deeper way than by reading either book by itself. This book is not, however, the Java version of "Design Patterns". Some of the examples seemed strained to make their point. Also, by limiting himself to Swing, the author missed the opportunity to discuss how to use patterns in server side Java development. In general, however, the book does a good job of explaining design patterns and how to use them.

Discuss book in the Saloon More info at Amazon.com




Professional Java E-Commerce
by Subrahmanyam Allamaraju, et al


Peer Information
1 edition
February 2001
1003 pages

Reviewed by Marcus Green, July 2001
  (10 of 10)


Despite the size of the book, it covers so many technologies that it cannot be the authoritative reference on any of them. Thus if you want to become a real expert on J2EE then you need the Wrox Professional J2EE book, or if you want to become an expert on JSP Wrox have a big fat book on JSP (recently updated) . Don't buy it if you don't like large chunks of program code within the text, it is physically rather heavy to carry around. Pros High level coverage of a wide range of related Java technologies by people who appear to have actually worked with them on real world projects. The authors seem to have actually used the technologies in the real world rather than just read the documents and played with a few toy applications. It gives gives you enough to evaluate how and where you would use each of the technologies and examples of how people have used it in real projects. Should you buy it? If you want to be aware of what technologies are available and find out how they can be applied then this is an excellent buy. If you want to start to learn and implement any of the topics mentioned from scratch, you would be better off buying a book that caters specifically for that topic. I will post a more detailed review in the book review forum.

Discuss book in the Saloon More info at Amazon.com




Java Servlet Programming
by Jason Hunter, William Crawford, Jason Hunter


O'Reilly
second edition
April 2001
780 pages

Reviewed by Ajith Kallambella, June 2001
  (10 of 10)


The book is a Revised Version of the first edition rewritten to cover the latest Servlet API specification 2.2 as well as to introduce the major changes in the upcoming 2.3 draft spec. The book begins with chapters covering the history of Servlets and a quick introduction to Web applications/HTTP that offers an insight into the world of Servlets for newbies. The following chapters quickly delve into core topics such as Servlet lifecycle, session tracking techniques, using JSPs with Servlets (there is a lot of emphasis on this in the book), Applet to Servlet communication and Servlet chaining and collaboration. Brief notes are scattered throughout the book that talks about changes in the 2.2 spec pertaining to specific contexts. The book includes several supplementary chapters that focus on leveraging technologies such as JDBC, WAP/WML, SSL J2EE and Internationalization. These quick tutorials blend very well with the overall premise of the book and help paint a holistic picture of a typical Servlet application. I found the J2EE refresher and the section on Taglibs very informative and so much better than what many web sites have to offer. The concluding chapters cover Servlets in action - many alternative Servlet frameworks such as Element Construction Set (ECS), XMLC, Tea, and WebMacro/Velocity that stand as evidence to the popularity and applicability of this great technology. This is a must-have book. The exactitude, clarity and comprehensiveness makes it a worthy addition to any Java developer's bookshelf.

Discuss book in the Saloon More info at Amazon.com



O'Reilly
1 edition
April 2001
780 pages

Reviewed by Paul Wheaton, January 2000
  (5 of 10)


This book is probably the most popular servlet book right now. It's an above average book. And has some useful information. I felt many of the examples could have been simpler. Some of the text too. Some of the examples and text had some outdated info. Overall, I would say that this is a five steps forward, one step back kind of book. Second Edition is now out!

Discuss book in the Saloon More info at Amazon.com




Java Servlets Developer's Guide
by Karl Moss


McGraw-Hill
second edition
February 2002
588 pages

Reviewed by Paul Stevens, April 2002
  (9 of 10)


I started this book with a very basic understanding of Servlets. A good book increases your knowledge of a subject without boring you to tears. This book does that. The book has many examples with very good explanations of not only the code but why the code was even written. It is easy to read and understand. It covers from setting up the server configuration to wireless and WML. The book's format is well designed starting at the very basics and moving through the more advanced topics. If you want to increase your knowledge (or start) of Servlets, I feel this is the book to read.

Discuss book in the Saloon More info at Amazon.com



McGraw-Hill
second edition
February 2002
588 pages

Reviewed by Arthur Chan, October 2002
  (8 of 10)


Full of insights and practical examples for those who persevere. Occasionally , the book is incomplete, perhaps with the expectation that the reader "ought to know" by now. One such example is Chapter 10 "Applet-to-Servlet Coomunication ", where one is left wondering how to extend "BaseTunnelClient". More please, Mr Moss !

Discuss book in the Saloon More info at Amazon.com




Java Programming with Oracle JDBC
by Donald K. Bales, Don Bales


O'Reilly
1 edition
December 2001
450 pages

Reviewed by Ajith Kallambella, February 2002
  (9 of 10)


An excellent coverage of Oracle's implementation of JDBC, this book beats your expectations.

Meet the middle ground where the strengths of Java and Oracle work in synergy - the JDBC. Whether making simple database connections or using the Oracle 8i's sophisticated object-relational features, the authors peel the onion very well with detailed information and cleverly written examples. After a brief overview of JDBC, several different types of database clients are discussed in detail - the applets, the Servlets, the Server side internal drivers and those managed by J2EE using JNDI and connection pooling.

A whole section is dedicated to traditional uses of JDBC API such as cursors, submitting prepared statements and ResultSet manipulation. The chapter on Object-Relational SQL covers broad ground on both Weakly Typed Object SQL and Strongly Typed Object SQL.

Enterprise essentials such as Security, locking, transaction management supports for data encryption and SSL issues, performance tuning and testing strategies - are addressed in detail. This book is treasure trove if newer feats of Oracle are of Interest to you. I found immediate application for features such as creating object tables and column objects based on user-defined data types, support for really big streaming BFILEs and LONG RAW data types and batch processing for my project.

Overall, this book has everything you need to learn, know and master in order to leverage the essential two great technologies - JDBC and Oracle. Every serious Java developer should have this at arms reach.

Discuss book in the Saloon More info at Amazon.com



O'Reilly
1 edition
December 2001
450 pages

Reviewed by Frank Carver, August 2002
  (8 of 10)


A workmanlike book which achieves its aims.

This book is for Java developers who need to get the most out of using JDBC and Oracle (version 8.1.6). Choosing a specific database allows a lot more detail. Other JDBC books may skip database-dependent parts of the API; this book even gives code examples for the hard stuff. It is slow to read end-to-end, but "dipping" works well - there's almost always a helpful code example nearby.

There are problems, though. The author is obviously very familiar with Oracle, but lacks the experience to make comparisons with other products, this book won't help you choose when to use Oracle. Also I noticed other signs of lack of research - he sometimes gets abbreviations wrong, and the Java code is not particularly well-written.

The big problem for me is that the book assumes you only ever use Oracle. There is no consideration of code portability, it offers no wisdom about avoiding proprietary Oracle-specific extensions. The techniques in this book could easily lock your product into Oracle.

The book has minor discussion of extra features in Oracle8i and Oracle9i, but nothing about JDBC 3. It's less helpful if you are using a version older than 8.1.6, too.

If you have already sold your soul to Oracle, get this book. If you might use other databases, get a more generic book, and keep this one for emergencies.

Discuss book in the Saloon More info at Amazon.com




Advanced Java Server Pages
by David M. Geary


Prentice Hall PTR
1 edition
May 2001
512 pages

Reviewed by Thomas Paul, October 2001
  (9 of 10)


The basics of JSP are easy to learn for anyone familiar with HTML and Java but it is difficult to learn the many advanced features. This book covers the complexities of JSP very well and helps to make them simple and easy to understand.

The book starts with coverage of JSP custom tags, one of the most important features of JSP. HTML forms and JSP templates are covered next. The section on templates is extremely useful for those who wish to use pluggable components to build web sites. The best part of the book for me were the middle chapters which cover designing a Model 2 framework using servlets and JSP. The framework is generic and can be applied to any web site development effort. He then demonstrates how event handling can be used within the framework to provide internationalization, authentication, and form resubmission trapping. (Have your users ever created additional profiles by using the back button?) The next chapter demonstrates using custom tags to access databases. The author then shows different ways to process XML with JSP. The final chapter is a case study demonstrating all the techniques used throughout the book.

Code samples are found throughout the book and I had no trouble getting any of them to run in Tomcat. The tag libraries are provided as open source by the author and will be helpful for most developers. The book is very well written and will be useful for anyone interested in advancing their knowledge of JSP.

Discuss book in the Saloon More info at Amazon.com




Enterprise Java Servlets
by Jeff M.Genender


Pearson Education
unknown edition
September 2001
464 pages

Reviewed by Ersin Eser, November 2001
  (8 of 10)


The book is about single-dispatch-Servlet architecture in which the author's primary goal is to encapsulate and protect its own resources from outside applications and write easy to maintain and extendable applications. The book needs to be read from beginning to the end. Randomly reading a chapter will not be useful. It is a really good resource for intermediate level Java Servlet programmers. Advanced programmers might find it lite. It is not for the beginners. Prepare yourself to read lots of code. The chapters related to error logging is very useful by addressing how to create manageable and readable error logs.

Pooling concepts are very practical by addressing how to create pools; managing pool's resources before checking them in and/or out from the pool; how to centralize its control so developers don't have to worry about it over and over again.

LDAP is an excellent intro.

JSP is about how to integrate JSP into his design.

His design might not be the right or the best way, but the ideas and solutions in this book certainly teaches a lot and will improve design. And if you happen to like his architecture you will have all of his code; just add whatever you want to and tweak it: You will be up and running in a very short time. The author currently does not have a supporting web site. The cd-rom does not come with a make file. He does not provide UML documentation.

Discuss book in the Saloon More info at Amazon.com




Java Network Programming
by Harold, Elliotte Rusty, Harold, Elliotte Rusty


O'Reilly
third edition
October 2004
504 pages

Reviewed by Valentin Crettaz, March 2005
  (9 of 10)


In a world where people and machines get more and more connected everyday, it is reasonable to consider the network as being an intrinsic part of nature. No matter whether it is wired or wireless, the network is ubiquitous and it wouldn't be exaggerated to state that 99.9% of all human activities heavily depend on it. Take the network down and get ready to experience chaos! On one hand, such a vision might trigger the scariest nightmares. On the other hand, this massive dependence justifies that we take network concerns very seriously and adopt a mindset that forces us to consider networking as a vital aspect of any information system.

This fully revised edition includes all updates introduced by the latest Java 5 release into one of the most complete and comprehensive reference about Java network programming available today. In order to show you what kind of support Java provides for making sense of all those bytes transiting on the network, the author first discusses some basic network and web concepts and then delves into more specific topics, such as streams, threading, URIs, client and server datagrams and sockets, asynchronous I/O, protocol and content handlers, RMI, the JavaMail API, and many other attractive subjects illustrated by relevant pieces of code.

Whether you consider yourself a novice or advanced Java programmer and you are willing to build network aware applications, don't wait any further and rush to your local store. You won't regret it!

Discuss book in the Saloon More info at Amazon.com



O'Reilly
1 edition
August 2000
760 pages

Reviewed by Paul Wheaton, January 2000
  (8 of 10)


I bought this book a year and a half ago. It's good, but outdated. The author, Elliotte Rusty Harold is a good writer and has been on the Java scene a long time. His web site Cafe au Lait is one of my favorites. He must update the site a few times a day. Back to the book review: I do still look stuff up in this book. Mostly things involving network ports, etc. But now I have other books that do a better job of that. It would be great if a second edition of this book came out that included more on RMI and other modern Java network stuff.

Discuss book in the Saloon More info at Amazon.com



O'Reilly
1 edition
August 2000
760 pages

Reviewed by Kathy Sierra, October 1999



This book is old (1997) but still relevant and VERY helpful. Harold emailed me a one-word response to this message I sent: "Will there be an updated version"? His response: "yes". I've been too embarrased to write back and ask my second question..."when"?

Discuss book in the Saloon More info at Amazon.com



O'Reilly
1 edition
August 2000
760 pages

Reviewed by Paul Wheaton, October 2000



UPDATE - Second edition (August 2000) A brand spanking new copy of an old favorite. Mr. Harold always seems to write books that are way ahead of their time. Then things change, his book becomes outdated and he never updates it. This is the first exception (that I know of). He has an excellent writing style, so the concepts in this book are easy to digest. I've read most of it already and forsee getting a lot of mileage out of this book.

Discuss book in the Saloon More info at Amazon.com




Java Enterprise in a Nutshell
by David Flanagan, Jim Farley, William Crawford, David Flanagan, Jim Farley, William Crawford, David Flanagan, Jim Farley, William Crawford


O'Reilly
third edition
November 2005
892 pages

Reviewed by Jeanne Boyarsky, January 2006
  (9 of 10)


"Java Enterprise in A Nutshell" preserves the spirit of the Nutshell series, but weighs in a t 837 pages. Each chapter covers a different technology in a nutshell. Many of J2EE technologies, such as EJBs and JNDI. Others are J2SE technologies, such as JDBC and XML. There are also chapters on open source tools including Struts, JUnit and Hibernate.

Each chapters aims to be both a short tutorial to the topic containing the most important details. It isn't a complete reference because it is a nutshell, but the chapters still serve as a reference for common tasks. The appendencies contain a more detailed reference on certain topics, such as EJB-QL.

The authors are good about walking you through configuration files and the steps to do common tasks. Conceptual topics and terminology are also included, such as the servlet lifecycle and J2EE security. There are many code examples throughout. In addition to noting best practices, the authors explain when techniques are debated among developers.

The book moves at a fast pace for beginners, but I recommend it for any experienced developers who want a tutorial on different technologies. The only downside is that so many topics are covered, the book can't go into enough depth on each one.

Discuss book in the Saloon More info at Amazon.com



O'Reilly
second edition
April 2002
993 pages

Reviewed by David Vick, August 2002
  (8 of 10)


This most recent in a nutshell offering from O Reilly hardly seems like it ll fit into a nutshell, at least not any nutshell I ve ever seen. Despite the increase in size (almost double the size of the 1st edition), this book still manages to deliver a concise introduction to Enterprise Java. Part of the increase is the addition of chapters on JSP, XML, JMS, and Java Mail. Many of the chapters carried over from the 1st edition have been updated to the most recent specifications; JDBC 2.0, Servlets 2.2 and 2.3, and JSP 1.2. The entire book is an excellent reference to Enterprise Java, I would not advise it as the only book you have on the subject because it is very concise and an alternative source with different explanations would be very helpful (you can say that about almost any programming book though, so that is hardly an failing). The condensed API at the end of the book is very helpful and its expanded explanations of the different APIs makes it easier to understand them, as opposed to going straight from the Java Docs. Packed with both snippets and full length, compilable code, the examples are very helpful and help to illustrate all of the key concepts of Enterprise Java and go along way to improving the readers understanding. Even if you already have the first edition the additional, and updated content made this second edition a valuable edition to my reference collection.

Discuss book in the Saloon More info at Amazon.com



O'Reilly
1 edition
September 1999
660 pages

Reviewed by Frank Carver, November 2000
  (8 of 10)


One of the seemingly endless "in a Nutshell" series from O'Reilly, this book follows the basic series format. A few chapters of concise introduction followed by a detailed, if compressed, API reference. In this case the book covers a lot of ground - all the Java APIs which form part of the Java 2 Enterprise Edition: JDBC, RMI, CORBA, JNDI, Servlets, EJB as well as some material on JMS. The edition reviewed is beginning to date a little, as it only covers version 2.1 of Servlets with no JSP, but the vast majority is still solidly useful.
I was worried when I bought this book that they were attempting to cover too much, but I think they have done a remarkable job. This book really is the most readable introduction to J2EE I have found so far. It's small enough to carry about (unlike the massive Wrox tomes), and the API reference can help to keep it useful after you've absorbed the introductory material. It even has a basic SQL reference, which you don't get in some JDBC books!

Discuss book in the Saloon More info at Amazon.com




Professional Java Servlets 2.3
by John Bell, Tony Loton, et. al.


Peer Information
1 edition
January 2002
700 pages

Reviewed by Johannes de Jong, May 2002
  (7 of 10)


When I sat down to write this review I knew how a teacher must feel when he had to give a star student a bad score.

This book has all the information you need to write the perfect application that is scalable, secure, maintainable and perfectly debugged based on the Java Servlet 2.3 API. The authors obviously know their stuff and they individually share their knowledge clearly and understandable with the reader. Individually however, is exactly where my problem lies with this book. The book would have worked so much better for me if it had a golden thread running trough it, if a sample application was described in the beginning of the book for instance and the authors each contributed to one final perfect solution.

To be able to try all the example code one has to download megabytes of stuff from the internet. What bugged me most about that was that URL's for downloading were scattered all over the book. I for one download and install all the required stuff before I attack a book. Please Wrox, a separate Appendix.

Talking about Appendices, Appendix B (HTTP Reference) and Appendix C (Servlets API Reference) are great!

This book deserves a better score, it provides me with all the info I need, but I am afraid the way it is told as a whole stops me from obtaining the in-dept understanding of Servlets I was hoping to find through this book.

Still worth buying though.

Discuss book in the Saloon More info at Amazon.com




Java Network Programming
by Merlin Hughes, Michael Shoffner, Derek Hamner


Manning Publications
second edition
May 1999
830 pages

Reviewed by John Wetherbie, August 2001
  (7 of 10)


This book is a nice introduction to an expansive topic. The book is divided into six sections that cover introductory material, streams, the java.net package, some alternatives to java.net such as CORBA, message streams, and an appendix containing networking information. There is a good amount of example code and the authors walk you through a number of larger examples in each area.

I especially liked the small diagrams placed throughout the book to illustrate concepts and what the code is doing. The book does have the problem of presenting too much information already available in the API's javadocs. Overall, a good introduction to Java networking.

Discuss book in the Saloon More info at Amazon.com




Developing Java Servlets
by James Goodwill


Sams
second edition
May 2001
624 pages

Reviewed by John Ternlund, September 2001
  (7 of 10)


If you are in a position where you need to do development involving Java Servlets, (as many web developers these days are now finding themselves in), "Developing Java Servlets Second Edition" by James Goodwill is a book you may consider looking at. For those that are interested in just learning more about server-side Java programming (with focus on developing Java Servlets), consider looking at and possibly adding this text to your collection.

The material is aimed at individuals who are already comfortable developing in Java, but want more information or examples on server-side Java programming. For individuals new to Java Servlets, the book does have a nice overview of Servlets as well as good information presented on Servlet Architecture. Servlet basics are presented as are some examples. Good example code is a key contributing factor to making any book focused on software development useful. This book provides a significant amount of example code, but unfortunately, lacks a CD-ROM. Although a little tricky to find, the source code to the examples is available on-line.

This book attempts to cover a little too much information but does succeed in providing some good reading centered around Servlets on sessions, tunneling, security, and LDAP. It also contains material which may be new to this edition on JavaMail, XML, JSP, EJB, and wireless Servlets with WML/WMLScripts. Overall a useful book to read if you are interested in Java Servlet development with code examples or just an overview of server-side Java programming.

Discuss book in the Saloon More info at Amazon.com



Sams
second edition
May 2001
624 pages

Reviewed by Paul Wheaton, January 2000
  (5 of 10)


Again, good marks on Amazon and I've read only the first two chapters A second edition is now available.

Discuss book in the Saloon More info at Amazon.com




Server-Based Java Programming
by Ted Neward


Manning Publications
1 edition
July 2000
592 pages

Reviewed by Thomas Paul, July 2001
  (6 of 10)


Would you believe that there is a Java Server book that has almost nothing to do with Servlets, JSPs, and Enterprise JavaBeans? If you are an advanced Java programmer and have felt a need to write your own application server then this may be the book for you. The author starts off with a well written discussion of class loaders and then goes on to show how to design your own application server using your own class loader. For most developers this may be interesting but of little real value. The thread chapters will provide little new information for anyone who has studied for the SCJP. The next few chapters discuss RMI, sockets, persistence, serialization and other issues that are required for the application server that the author is developing throughout the book. Servlets are briefly discussed but mostly on how they can be used to replace sockets and RMI within the application server framework. This is followed by a discussion of modeling business objects that seems somewhat out of place. The middleware section is very interesting and covers a wide array of topics from JMS to CORBA. The JNI section will probably not be used by many Java developers. Although the book is interesting I am left with the feeling that the author has missed the point. Why would a team of developers spend tens of thousands of dollars developing a service framework when inexpensive and robust application servers are readily available on the market.

Discuss book in the Saloon More info at Amazon.com




Java Database Programming
by Jepson, Brian


Wiley
1 edition
November 1996
485 pages

Reviewed by Frank Carver, November 2000
  (2 of 10)


This book is subtitled "Master Next Generation Web Database Techniques", so you might be forgiven for thinking that it has something to do with the web, or HTML, or distributed computing. No such luck. What you really get is mostly a collection of annotated source code listings for a simple SQL interpreter and database using plain text files,padded out with one or two chapters of introduction to SQL and JDBC. If you are interested in how an SQL database might be written, or you want to provide an SQL/JDBC interface to some plain text files then it could still be a ueful book, but I can't give a good review to any book which so wildly misrepresents itself.

Discuss book in the Saloon More info at Amazon.com




Learning Wireless Java
by Qusay H. Mahmoud


O'Reilly
1 edition
December 2001
300 pages

Reviewed by Matthew Phillips, February 2002
  (10 of 10)


Learning Wireless Java is a small book, but the author uses the pages well. The book doesn't waste time trying to teach basic java programming. It jumps right into the subject and doesn't look back.

The book is broken down into three sections. The first section introduces Java 2 Micro Edition. It gives you definitions of basic terms and by page 10 you are working on your first program. The rest of the section gives you the detail on CLDC and MIDP that you will need for the rest of the book.

Section two introduces you to programming with CLDC and MIDP. It starts with an introduction to the KToolbar and then each other chapter introduces you to another area of wireless programming with Java 2 Micro Edition.

Section 3 has a quick reference to the APIs included with CLDC and MIDP. Normally I am not a fan of including API in a book but I found myself referencing this one often.

Discuss book in the Saloon More info at Amazon.com




Professional Java XML
by Wrox Team


Wrox
1 edition
April 2001
1200 pages

Reviewed by Ajith Kallambella, August 2001
  (10 of 10)


The most comprehensive XML guide I have ever read, the "Professional Java XML" covers the breadth of XML technologies. You've heard it a lot of times by now - the concept of "portable code and portable data" is no longer a hype. While XML itself has undergone many standardizations in the past three years, the possibilities of integrating XML in Java applications has grown leaps and bounds.

This is surely one of the best XML companions available today for Java developers. Beginning with a crisp introduction of XML basics, the book quickly moves into important aspects of XML support in Java such as parsers, DOM, SAX, JAXP, JDOM and XML transformations. The next group of chapters is dedicated to the charter of the book - effectively using XML in various Java application domains. Diverse scenarios are covered from simple things as Object persistence, socket I/O and configuration scripts to sophisticated uses such as XML Databases, Client and Server side HTTP and using XML as a message-ware. The concluding chapters cover a host of new and promising technologies like SOAP, WebServices and XML for communication protocols.

With 22 chapters written by 15 subject experts, Wrox cannot go wrong. Since the book has been very recently published, it covers all the brand new standards and specifications from W3C. The book includes numerous case studies, readily usable real-life examples, tips and tricks (how to JAXP-enable any parser - Chapters 2 and 3 ) and even "under the hood" facts( Architecture of Xalan ).

Talking about the downside, with so many authors (15 of them!) involved in the project, consistency of tone and the level of technical presentation greatly varies from one chapter to another seriously affecting the readability of the book - its like a roller-coaster ride! When I finished reading the book, it felt more like a collection of articles from Dr.Dobbs journal.

Overall it is a great book that can be used both as a tutorial and a desktop reference. It is literally worth its weight in gold!

Discuss book in the Saloon More info at Amazon.com




Wireless Java Programming With J2ME
by Yu Feng , Dr. Jun Zhu


Sams
1 edition
May 2001
512 pages

Reviewed by Shailesh Sonavadekar, August 2001
  (10 of 10)


J2ME. The next frontier of Java technology. The first book was written by Eric Gigure. It was only a reference for J2ME with CLDC in mind as MIDP was under construction at that time. This book is written straight from the trenches. It is a great feast for the coders who want to sully their hands with code.
The book is nicely structured in three parts. Part I talks about Wireless applicatons: how Java is getting into the wireless area, what are the basics needed for J2ME programming, etc. In Chapter 4 , the authors have explained MIDP in detail. Part II is the core of this book. The authors have covered everything on components of UI for wireless devices. Use of high level and low Level API for application development is explained in detail with lots of code. The use of XML in the wireless application chapter gives an idea of what is possible in the future. The data synchronizatiuon techniques and network programming chapters show the real reach of J2ME. The biggest plus point of this book is the chapter on MOTOSHOP, the application for which Yu Feng won the Motorola contest. The entire chapter is dedicated to the application. In Part III, CLDC and MIDP class liabraries are given along with very, very good information about DOCOMO's I-mode which made J2ME so popular. This book is the icing on the cake after Eric's book. Developers who like to play with lots of code will love this piece. The book is for Intermediate to Advance Developers.

Discuss book in the Saloon More info at Amazon.com




Professional Java Mobile Programming
by Taylor, et all.


Peer Information
1 edition
July 2001
1000 pages

Reviewed by Matt Midcap, July 2001
  (10 of 10)


"Java Mobile Programming" starts out strong with an in-depth view of J2ME technologies and protocols, explains how they are related, and shows what each technology has to offer for the embedded and mobile device developer.

Advantages of a proper J2ME architecture and a very useful case study implementing the architecture is provided before plunging into the core J2ME device configurations. Each of these sections provide a clear and concise explanation of each configuration supported by self-documenting code examples. However, since "small" and "limited resources" are the name of the game, the book gives reference and rightfully recommends the use of code obfuscators to help decrease the size of J2ME applications.

Equally impressive and pleasantly surprising were details of the current limitations of J2ME technologies. Suggestions on how to avoid designs that may prove to limit a J2ME application are also included in this detailed book. I also appreciated the chapter on how to convert applications to CDC and CLDC. This indicates that the authors wrote this book thinking about real world scenarios.

The bottom line: This book gives a detailed and in-depth look at J2ME technologies, design, and architecture. It has useful - real world case studies, sample code, and several working applications that teach the concepts. It explains how to use/interact J2ME with JMS, J2EE, Servlets, Security, Synchronization, etc., and explanations of the pros, cons, and gottchas of each.

If this sounds like what you need, this book is for you.

Discuss book in the Saloon More info at Amazon.com




Web Content Mining with Java
by Tony Loton


Wiley
1 edition
January 2002
320 pages

Reviewed by Frank Carver, April 2002
  (9 of 10)


This book may not seem an obvious choice for many readers. It's not about a particular API, certification, or other buzzword topic, and the title can sound dry and academic. Don't be put off! This is a practical, hands-on book which can take your software straight past the hype of web services and into using the resources of the whole internet in your programs right now. With no big middleware downloads, protocol specs, or head-scratching config files.

The book walks you through how to read, control and extract information from existing web pages and web applications anywhere on the internet, how to read, send and process emails and newsgroup postings, how to recognise just the text or data you want, and much more. Source code is given for servlets and applets to examine and drive web forms, and usage examples include sending SMS messages and applying decision-making rules to internet share-price data. It's also full of ideas and suggestions to make you want to leap up and get started.

When I got this book, I couldn't put it down. A lot of computer books sit on the shelf or send me to sleep, but not this one. Not only is it both topical and useful, but it hits a just-about-ideal balance between code and food for thought. The author has a real knack for useful solutions to complex problems.

Discuss book in the Saloon More info at Amazon.com




Taming Java Threads
by Allen Holub


Apress
unknown edition
June 2000
300 pages

Reviewed by Thomas Paul, September 2001
  (8 of 10)


This book is for the experienced Java developer who has a solid understanding of the basics of threads. If you have been working with threads and are looking for a book to help you avoid thread problems then this book may be exactly what you need. The author does an excellent job of explaining why threads are not easy to use correctly and then provides an extensive library of classes that can be used to overcome thread problems. These classes are the meat of the book. Each class is designed to solve a specific problem that using threads by themselves can create. In general the classes are explained well although there were several blocks of code that I thought deserved a deeper discussion.

The topics covered are extensive: exclusion semaphores, counting semaphores, locks with timeouts, and read/write locks. The semaphore classes provided can solve a host of problems and are worth the price of the book by themselves. For Swing the author discusses timers, alarms, thread safety, observers, and multicasters. The discussion of Swing and threads is critical for Swing developers to understand but is often skipped over in books on Swing. However, I have one complaint with this book. The main reason for buying this book is the code but the author insists on either a mention in your about box or you must pay a license fee to use the code. For some corporate IT departments this could be an issue.

Discuss book in the Saloon More info at Amazon.com




Professional Java Data
by Danny Ayers, John Bell, Carl Calvert-Bettis, Thomas Bishop, Bjarki Holm, Glenn E. Mitchell, Kelly Lin Poon , Sean Rhody et. al.


Peer Information
1 edition
June 2001
1300 pages

Reviewed by Johannes de Jong, August 2001
  (8 of 10)


This book does a fantastic job covering the different options available to the Java programmer when it comes to data centric problems / solutions. Though not a JDBC specific book, JDBC is the "golden thread" that runs through the whole book. Both the JDBC 2.0 optional packages and SQLJ are covered in depth , nice and up to date.

Most readers will be inclined to skip section I , (Software, Object, and Data Design and Modeling ), I suggest you don't its a fantastic summary on the subject. Technology watchers will be happy to see the inclusion of the chapter on JDO.

Case studies are included in books to make the theory come to life. This book has as many as 4. I would have preferred one massive case that took a "problem" , highlighted the options available to the designers , discussed the pro's and cons of each and implemented it.

I also wish the team that wrote this book took the time to choose one standard set of tools ie. data base servers, for their coding examples. I personally find it extremely irritating that I have to download and install something else first before I can try the code in a new chapter.

I highly recommend this book. This is the book you will grab when you want do "Data in Java".

Discuss book in the Saloon More info at Amazon.com




Java Message Service
by Richard Monson-Haefel and David A. Chappell


O'Reilly
1 edition
December 2000
238 pages

Reviewed by Thomas Paul, February 2001
  (8 of 10)


In the past, programmers using Message-Oriented Middleware (MOM) were forced to learn the protocol specific to a middleware product. With the development of the Java Message Service (JMS), developers only need to learn one simple API set for any MOM system. This book is written for the experienced Java developer who wishes to quickly learn how to use the JMS API. It clearly explains and demonstrates using the JMS API with easy to follow examples. The authors start with a description of the basis of MOM systems and describe the two types of messaging systems (point-to-point and publish-and-subscribe) that are supported by JMS. They also explain why an asynchronous messaging system may have an advantage over remote procedure calls in some applications. In the next few chapters, the authors give details on how to use the JMS API to develop a simple B2B application using the two messaging systems. The authors then discuss some advanced JMS topics including guaranteed messaging, transactions, and message failures. They then cover deployment considerations (including performance, scalability, and security), and the new EJB type, the message-driven bean. The final chapter is a brief look at some of the JMS products available. Appendixes provide a quick reference to the API and detailed information about messages. At a time when publishers seem to prefer more pages to quality information, it is a pleasure to find a book that manages to provide you with all the information you need on a topic in only 220 pages.

Discuss book in the Saloon More info at Amazon.com




Java & XML Data Binding
by Brett McLaughlin


O'Reilly
1 edition
May 2002
214 pages

Reviewed by Mark Spritzler, June 2002
  (7 of 10)


Welcome to Data Binding. Not sure where to go? Just pick up Java & XML Data Binding by Brett McLaughlin. He'll show you where to go. Not that its too difficult to find your way, as using Data Binding is easy. But Brett not only makes it easier, he also demonstrates the best practices, the package limitations, and how-to's on the other packages that either pre-date JAXB or extend it, past its limitations.

The author is the founder of Zeus, one of the other data binding implementations. But Brett does not try to sell one implementation over another. He successfully presents his material objectively.

Data Binding is the ability to convert XML documents into Java objects and back quickly with very little coding on your part. With a DTD and a Data Binding Schema (XML) you run xjc and it automatically generates your class code for you. So now with just 3 lines of code, you can convert that XML into a Java Object.

I found the book to be a very easy read. There is lots of code for you to practice with. Brett's explanations are easily understood, and he throws in some good humor to keep this book light.

I guess the final question of whether to buy the book comes down to whether you need Data Binding in your applications. If the answer is "You bet your boots I do," I highly recommend you buy this book.

Discuss book in the Saloon More info at Amazon.com




XML Development with Java 2
by Michael C. Daconta, Al Saganich


Sams
unknown edition
October 2000
448 pages

Reviewed by Ajith Kallambella, March 2001
  (7 of 10)


The first five chapters breeze through general XML technology concepts such as parsers, DOM API and XSL/XSLT. Since this is not a book about XML itself, you should not be surprised about the pace. The remaining five chapters talk about the actual mission ie., integrating XML with Java applications. Sections on using XML for bean and EJB persistence, writing Servlets that render XML-based information and XML/JDBC collaboration are noteworthy. The authors go that extra mile and talk about idiosyncrasies of vendor support for XML, especially the subtle differences you have to get used to while using XML parsers from Sun, IBM and Oracle. On the flip side, many crucial topics have been left out and these omissions are starkly visible. There is no mention of concepts such as JDOM, XML RPC, XMLSchema (this disappointed me), XML-based publishing frameworks etc. Lack of emphasis to detail has compromised the quality of the book. The code samples are lengthy and some programs on CD do not even compile clean. Several programs are missing from the CD. I searched on the Sam's web site to see if there is an errata page and again, I was disappointed. Last but not least, there are over a dozen typos which makes you think - did they hurry into publishing this book? You cannot use this book as a workable reference. I would love to see a second edition that has more comprehensive coverage and better quality.

Discuss book in the Saloon More info at Amazon.com




Java 2 Micro Edition
by


Manning Publications
1 edition
April 2002
400 pages

Reviewed by Matthew Phillips, June 2002
  (5 of 10)


This book delivers on the expectations set on the back cover. The way it delivers on this provides both the positive and negative aspects of the book.

The book is laid out in four parts. Part 1 is an overview of J2ME. Although a lot of good information comes from this chapter, I felt that a lot of information went beyond the scope of the book into territory that an experienced Java programmer would already know. Chapter 3 lays out the overall design of the application used in Parts 2 and 3, an investment quote application.

Part 2 implements the investment quote application using the MID Profile. Part 3 implements it with the KJava Profile. Both sections do a good job of explaining the code. I really like that they chose a real world scenario for the tutorial.

Part 4 goes into a more in depth analysis of networking issues, analysis, and design. Chapter 11 is definite must read if you are new to programming in general and very new to limited resource devices.

I have two major problems with this book. Issue one is the editing. It appears that the editor did not read through to find the spelling errors. A few errors could have been found by a spell checker. My other issue is the fact that the book is dull. On more than one occasion I fell asleep while reading it. I usually don't have that problem with tech books, so it was particularly noticeable.

Discuss book in the Saloon More info at Amazon.com




Professional Java Web Services
by


Peer Information
1 edition
January 2002
600 pages

Reviewed by Margarita Isayeva, March 2002
  (5 of 10)


I have a feeling that this book will miss its target audience.

The word "Professional" in series title apparently signals that you are expected to know what Web services are, how they fit in distributed computing model, why do you need them, and whether you need them or not in the first place. The book brings you directly to "how to" and digs into mundane implementation details - lots of code and mandatory for Wrox books case study. It isn't clear for me what value lightly commented code delivers to the audience defined as "professional". All discussed packages (Apache SOAP, Axis, Glue etc.) come with their own examples and pretty good documentation...

Code-driven approach would serve better not "professionals", but beginners, "following" learners, if to use Alistair Cockburn's terminology. "They need one (procedure - M.I.) to learn first, one that works. They copy it; they learn it." Of course, to be useful for beginners, discussion needs to be more gentle and instructions more detailed and accurate...

It wouldn't be fair to say there is nothing besides commented code, though. There are "theoretical" chapters for each contributing protocol: SOAP, WSDL, UDDI etc. which do not deviate too far from corresponding specifications. There are chapters on assorted issues from security to JAXM/JAXR, but I did not get much from a brief overview.

In short, this book is too difficult and too terse for inexperienced programmers, and too verbose and unfocused for experienced folk.

Discuss book in the Saloon More info at Amazon.com




Soap Programming with Java
by William Brogden


Sybex
unknown edition
January 2002
448 pages

Reviewed by Michael Ernest, March 2002
  (5 of 10)


This book was rough going for me; I'm still not sure what it's about or what I gained from it.

I expected to read a) a vision of SOAP's place in network computing, and b) how Java applies to it. What I got was a sprawling discussion that included more than it left out -- UDDI, WDSL, .NET, DOM, SAX, XML-RPC, Jini, JMS, J2ME, JDBC, JAF, Tomcat. Some of these were covered by bullet points, or links to "more information," or term definitions, or tables of who's doing what. And I simply forgot what I was reading and started over two or three times.

There are dozens of snooped SOAP chatter listed in the book, which I think the reader is just supposed to pore over and "understand." For me, those listings support my conviction say either XML is a waste of time, or there's nothing to understand about it. I can count on one finger the books I have read about HTTP that show listing after listing of HTTP traffic; it doesn't explain itself.

The lack of direction and cohesion in this book makes it frustrating to read. I learned what SOAP is; after that, I'm unsure. Lots of things are covered, but without attaching significance to many of them, it's hard to say if that's good or bad.

Discuss book in the Saloon More info at Amazon.com




Component Development for the Java Platform
by Stuart Dabbs Halloway


Addison-Wesley Professional
1 edition
December 2001
368 pages

Reviewed by Margarita Isayeva, March 2002
  (9 of 10)


I used to think about Java as a programming language: design, coding, debugging and when my classes are compiled - the game is finished. This book shows that a new round of the game starts from here. The objects turn into "components", and Java, the language, becomes a platform for component development. The author examines its basic features: class loading architecture, type information (Java class format), Reflection API to access this information - on top of these basic mechanisms many high-level technologies, like EJB, JSP, RMI, are built. And if you understand the underlying concepts, many mysteries with those technologies are solved. Better yet, now you do not have to rely on existing technologies, you can design and develop your own.

To wake up your imagination, the book shows how you can extend Java class format, write your own custom Class Loaders, add arbitraty functionality at run time via dynamic proxies, and - my favourite subject - to grant routine programming to code generators.

There are three reasons why I would love a book: it gives me either conceptual understanding, or details on what's going on "under the hood", or a bunch of practical advice. It's not often that one book includes it all.

Discuss book in the Saloon More info at Amazon.com




Java Performance Tuning
by Jack Shirazi, Jack Shirazi


O'Reilly
second edition
January 2003
600 pages

Reviewed by Thomas Paul, March 2003
  (9 of 10)


Once the business rules have been settled and all that is left is to tune the code, then the fun starts. Like a race car mechanic trying to squeeze out a couple of extra MPH from a race car, the most fun in programming is to try squeeze out extra performance from some code. A book on performance tuning should understand that and make the topic fun. Reading this book it is clear that Jack Shirazi loves to tune code. He has done an incredible amount of detailed research on different JVMs to determine exactly how to make Java perform. But he is also practical. He explains how to find performance problems, which exact areas to concentrate on, and which areas to ignore. After reading this book you won't waste your time on areas of code that can't be easily optimized and instead you'll know how to concentrate on those places where you can get the most bang. The book has been updated from the earlier edition to bring all the information up to date with the latest JVMs. Best of all, an additional 250 pages has been added to the book covering J2EE including Servlets, JSPs, EJBs, and JDBC. "Java Performance Tuning" is a programmer's book. You are guaranteed to learn a lot of very neat and useful tricks. I doubt that there is another Java book on the market with as many "WOW!" moments in it. Buy it and watch your code zoom.

Discuss book in the Saloon More info at Amazon.com



O'Reilly
1 edition
January 2000
436 pages

Reviewed by Thomas Paul, April 2001
  (8 of 10)


You have been working on that Java application for two weeks and it's finally ready for testing. Your window for having the web site down is ten minutes but you aren't concerned. Three hours later with the program still running, you are more than concerned. Before you panic, pick up a copy of "Java Performance Tuning". This book is geared for serious developers who need to dramatically improve performance in their applications and are willing to dig deep into the code. For example, writing your own customized Reader and byte-to-char converter can be ten times faster than using the BufferedReader class. Shirazi starts off by showing how to measure performance and identify bottlenecks, including a way to override the Object class to measure object creation. Subsequent chapters discuss key performance issues and possible solutions. Topics covered include replacing Strings with char arrays, eliminating casting and minimizing object creation, removing method calls from inside of loops, writing your own sort routines instead of using Arrays.sort(), identifying the correct Collection object, using threading to improve performance, and optimizing distributed systems to decrease network communication. As Shirazi explains, some of the methods covered may violate encapsulation or other OO techniques so they should only be used when performance has been identified as a critical problem. Besides being well written, the book is fun. I found myself trying to figure out along with the author how to improve the performance of the various examples demonstrated in the book.

Discuss book in the Saloon More info at Amazon.com




Professional Java Programming
by Brett Spell


Peer Information
1 edition
December 2000
1111 pages

Reviewed by Jane Griscti, February 2001
  (8 of 10)


Just passed the SCJP exam and wondering what's next? This book introduces you to topics you'll need to deal with on a regular basis as a professional Java programmer: Class Design, Threads, Event Handling, Layout Managers, Swing Components, JDBC, XML, Security, JavaHelp, JNI, Performance, and Distributed Objects. The author doesn't pretend this book will make you an expert in each area; he does, however, explain the fundamentals of each topic and provide examples of how-to implement the behaviors commonly expected in applications supporting each subject area. What is lacking is information on where you can find additional resources for each topic. This is the first WROX book I've read and I liked the way the material was presented. The examples progress from the simple to the complex and Mr. Spell provides clear explanations as to both why he chose to implement the behavior as he did and how he added the functionality. The source code for the examples can be downloaded from the WROX site. While I did not compile all the examples, I had no problems compiling and running the one's that caught my immediate interest. This is one book I plan to dip into often.

Discuss book in the Saloon More info at Amazon.com




The Java Virtual Machine Specification
by Tim Lindholm, Frank Yellin


Prentice Hall PTR
second edition
April 1999
496 pages

Reviewed by Kathy Sierra, May 1999
  (8 of 10)


You don't need the intimate details of the Virtual Machine to be able to program in Java. This book is designed for those who write compilers and VMs. But it can really help you understand exactly how Java -- the language -- is implemented. Besides, think how smart you'll sound when you walk around saying cool opcodes like "baload, bipush, i2f". This new second edition is updated for Java2 and also cleans up inconsistencies between the first version and the language itself.

Discuss book in the Saloon More info at Amazon.com




Java Event Handling
by Grant Palmer


Prentice Hall PTR
unknown edition
August 2001
624 pages

Reviewed by Michael Ernest, December 2001
  (7 of 10)


Event handling is not a subject that needs a thick book. I'm looking at my O'Reilly Java books that cover a similar scope and notice they're all under 300 pages. They look and feel readable.

Java Event Handling is 590 pages. Most of it covers the "event API." There are, for my expectations, too few pages that explain events, their workings, and how they power Java. There are almost no pictures, which is a real shame. The index also tells a story: I had trouble finding entries that weren't class or method names.

There's so much one can say about events: JavaBeans, RMI, EJB, Jini, Jiro all rely heavily on them. The least interesting thing is knowing the names of classes and what their methods do; those things should be the by-product of discussion and illustration, not the centerpiece.

The book does seem like a complete reference on its subject. And there are code samples, more than a few, to illustrate key points. Someone who feels lost and wants a lot of examples for a guide may benefit from it. But the "deep questions" that follow learning by repetition don't get much support. Those who can take the precepts given on faith will find it serviceable; those who want proof the author knows what he's talking about will find it unsatisfying.

Discuss book in the Saloon More info at Amazon.com




Program Generators with XML and Java
by J. Craig Cleaveland


Prentice Hall PTR
unknown edition
February 2001
448 pages

Reviewed by Margarita Isayeva, May 2002
  (6 of 10)


I had a very satisfying experience working with template-based program generators and have been intrigued by these techniques since then. A combination of Java and XML stated in the title sounded promising. So, maybe because of too high an expectation, this book was somewhat disappointing. It is written in a simple, "dummies friendly" style which is just too simple for the subject matter.

The book starts with a light introduction to domain analysis; then there is an outline of JSP and XSLT/XPath technologies - probably to allow a reader unfamiliar with them to understand examples. However if you are familiar with both, the examples don't provide too much insight besides common sense.

The chapter that could be central to the book shows how you can develop your own template language. Instead of formal approach, the development process is shown "by example", and a reader can witness how a syntactical clone of JSP is designed. In my opinion, absence of any formal design guidelines, limits the chapter's value.

In short, it can be a gentle introduction in a rather complex field, and give you some ideas how to implement a simple Program Generator in your project. Then, if you want more, Krzysztof Czarnecki and Ulrich W. Eisenecker's "Generative Programming" is the classic in this field; which is more of a challenge to read, though.

Discuss book in the Saloon More info at Amazon.com




Constructing Intelligent Agents with Java
by Joseph P. Bigus, Jennifer Bigus


Wiley
unknown edition
December 1997
379 pages

Reviewed by Frank Carver, November 2000
  (6 of 10)


A potentially interesting book, but little use as a reference. This book consists largely of annotated Java source code for a simple expert system shell or knowledgebase, with a few simplistic examples of embedding business rules in classes based on an "intelligent Agent Framework". Unfortunately, the "agents" presented in this book are just classes which are dynamically loaded into a container, and offer not much new to anyone who has used servlets or EJBs. I read through this book, and was sufficiently dissapointed with the code that I wrote my own, considerably more flexible, knowledgebase using based on the same principles, so it was useful for that, but unless you are in a similar situation, you should probably avoid this book.

Discuss book in the Saloon More info at Amazon.com




Advanced Techniques for Java Developers
by Berg, Daniel


Wiley
unknown edition
February 1999
528 pages

Reviewed by Frank Carver, December 2000
  (6 of 10)


A strange mixture of a book. Despite claiming on the cover that it "Fully Covers JDK 1.1 and 1.2" it was, in fact one of the first books to be rushed into print when Java 2 was announced, and thus lacks the depth and detail of many others. It reads as if the authors have just picked a few interesting topics and written a chapter about each. Many of the chapters are only of marginal or historical interest (Network Computers, JavaOS and JavaStation, for example), some have been superseded (the servlets chapter covers servlets 1.0, JWS 1.0 and HotJava), but others are still relevant (distributed development, RMI, networking, JDBC, IO, beans etc.) but even these are not covered in much depth. This book might be worth while if you find it in a discount bin, but for actual use you'd be far better off with a few books each of which covers one of the useful topics in more depth.

Discuss book in the Saloon More info at Amazon.com




Java 1.2 Developer's Handbook
by Philip Heller, Simon Roberts


Sybex
unknown edition
September 1998
1011 pages

Reviewed by Kathy Sierra, May 1999
  (6 of 10)


This is NOT a certification guide for the Developer's exam, or for the 1.2 Programmer exam. It is simply a book packed with useful, well-written information on advanced topics. This book is for AFTER you pass the SCJP and it's time to move forward.

Discuss book in the Saloon More info at Amazon.com




Java Connector Architecture
by Atul Apte


Sams
1 edition
May 2002
360 pages

Reviewed by Madhav Lakkapragada, June 2002
  (4 of 10)


This book is just another one of those things you could read when you have nothing else to do. While the back cover talks of "presenting JCA Specifications", you need to wait till the tenth chapter to get that taste.

The first few chapters overviews of J2EE, XML, Web Services, EJB and a few on Adapters. Personally, I don't understand why the author did not make these pre-requisites and concentrate on the actual subject matter - JCA. My interest in the book soon vanished as I had to wait till chapter 10 to see the first line of Java code.

Not my kind of book. I wanted to learn the Connector architecture throughly, but this book din't help me to the extent that I expected. There are very few examples. Just one huge application in the last chapter, although referece is made to parts of it in earlier chapters. This application is developed in the last five chapters. Seems to me that towards the end of the book, the author realized that we quickly need one example.

Discuss book in the Saloon More info at Amazon.com




Developing Java Software
by R. Winder, Graham Roberts


Wiley
second edition
March 2000
1028 pages

Reviewed by Johannes de Jong, March 2002
  (9 of 10)


The problem for many of us when learning Java is that we have to make a considerable mind shift from the procedural paradigm to OO, I finally found a book that really helps one make that shift.

I, especially, appreciate the small examples they have in the beginning of the book where they purposely code "wrong" solutions and then after reviewing the result recode it the OO "way". This is something they do throughout the book, constantly revisiting some examples when you've acquired new knowledge/insight. They then show you alternatives and/or improvements. A great teaching tool.

The section "Building Libraries" shows you how to build a class library containing , sort algorithms, heaps, etc. What can I say but, thanks for finally helping me understand the design considerations behind class libraries.

The case examples are fun and really very detailed, its more than a simple coding exercise. They teach you how to define the problem, design the solution, implement it, improve it, recode it, in short "dah lot".

The Java Language reference at the end of the book is also a gem. Everything you need is there. (don't expect the class libraries discussed in detail though).

I have a few small negatives that cost the book it's perfect 10, see the Book Review Forum for more info. However , I honestly believe this book teaches you sound Java and OO fundamentals, as such I highly recommend this book.

Discuss book in the Saloon More info at Amazon.com




Java Programming: From the Beginning
by K. N. King


W. W. Norton & Company
1 edition
July 2000
788 pages

Reviewed by Jane Griscti, July 2001
  (9 of 10)


Java Programming: From the Beginning truly starts at the beginning: nothing is taken for granted. Mr. King maps out the first steps every programmer must take towards understanding both programming and the Java language. The book does not provide an SCJP aspirant with everything they need to know to pass the certification exam: Threads are not covered and only a fraction of the Collection classes are dealt with;however, having said that, there are so many things I liked about this book: - The content is well organized, with each chapter building on it's predecessors
- New concepts are introduced clearly and concisely
- Good programming practices are emphasized throughout
- Alternative idioms are explained as well as why one is preferred over another
- Case studies illustrate the application of concepts
- Common errors are identified There are numerous exercises and programming projects (answers are not included) which are a real bonus if you're studying for the exam. Many of the exercises focus on identifying code errors; basic training for spotting errors in exam examples, and the projects give you plenty of opportunity to code, code, code! There is one oversight: the close relationship between hashCode() and equals() is not mentioned; plus one minor nit, JavaDoc comments are not used in the examples, which, IMHO, every Java programmer should learn to use early and often. As an added bonus, Mr. King maintains a support site for the book at Java Programming: From the Beginning which is well worth a visit. In summary, if you are new to both programming and Java, this book will start you off well provisioned on your journey towards certification.

Discuss book in the Saloon More info at Amazon.com




Just Java 2
by Peter van der Linden, Peter van der Linden, Peter van der Linden


Prentice Hall PTR
6 edition
July 2004
848 pages

Reviewed by Dirk Schreckmann, August 2004
  (9 of 10)


I wish I'd had a copy of Peter van der Linden's "Just Java 2" when I first began to learn Java programming. This is the best introductory Java book I've read. It's also an excellent reference for experienced developers, with twenty-eight chapters of clear and concise explanations on J2SE topics, plus coverage of some J2EE topics, including JDBC, networking, servlets and JSPs, XML and web services.

If you're not quite sure how some part of the Java language or API works, if perhaps a new feature in Java 5, such as generics or auto-boxing (sorry, no coverage on annotations), is unfamiliar territory, you will understand it and how to use it after reading Peter's explanations. On every page, it shows that Peter understands what experienced developers should know, as he explains the purpose, mechanism and use of topic after topic, providing very informative breadth and depth.

If you're brand new to programming, you'll likely want to get hold of another introductory programming resource, and use "Just Java 2" as *the* reference for gaining a strong understanding of Java programming concepts.

Alas, the book no longer includes a CD with example code and miscellaneous utilities. The back cover of the book suggests that all the example programs are available at http://afu.com/jj6, but they aren't, yet. Don't despair. I'd bet they'll be available soon.

Discuss book in the Saloon More info at Amazon.com



Prentice Hall PTR
5th edition
December 2001
1136 pages

Reviewed by Marilyn de Queiroz, February 2003
  (9 of 10)


The fifth edition of Peter van der Linden's book is an excellent introduction to Java 2. I found this book to be not only an informative and well-written view of Java, but also relaxed and amusing. At the end of each chapter is a section called 'Some Light Relief'.

The author now introduces Java to the beginning programmer as well as bringing the book more up to date by covering the new items in Java 1.4. He explains OOP concepts in plain English and uses illustrations. Small code snippets are used to demonstrate where needed, and he even builds a small webserver to demonstrate networking. He covers topics such as running servlets and JSPs on Tomcat, Java Beans, EJBs, networking, sockets and IO, including the new IO classes, advanced Thread topics, and RMI after he covers the basics of Java.

This book is not meant for people who are looking for a text to help them pass the Sun certification exams, but it will certainly help with understanding how the language works. In addition, the author has added exercises to help you consolidate and expand on what you have learned in each chapter.

The book also includes a CD which contains not only the sample programs developed in each chapter, but dozens of useful Java programs and utilities such as decompilers and obfuscators. It also contains a C/C++ editor and compiler, TCL, Perl and Python language kits and a number of Windows utility programs and shareware.

Discuss book in the Saloon More info at Amazon.com



Prentice Hall PTR
fourth edition
December 2001
1136 pages

Reviewed by Paul Wheaton, January 2000
  (9 of 10)


My favorite all purpose Java book. When I started with Java, I browsed over 30 books and read twelve. At the time, Just Java 1.1 had just come out and it was the one that made everything click in my head. Now, whenever I want to try something new, or I want a refresher on some part of Java, this is the book I turn to first. The author has an excellent sense of humor and a way of writing that makes the topic seem obvious. The author is also a Java kernel developer, so you can be sure he knows what he's talking about. Be sure to look for "alternative material" on the CD :)

Discuss book in the Saloon More info at Amazon.com




Murach's Beginning Java 2
by Andrea Steelman.


Mike Murach & Associates
unknown edition
September 2001
712 pages

Reviewed by Carol Murphy, September 2001
  (8 of 10)


This is a book for those who think learning to swim is best accomplished by being thrown into the deep end of the pool. Instead of beginning with several chapters dedicated to syntax and theory, you start coding right away. Chapter 2 deals with some basic coding skills and by its end introduces you to importing classes and Swing!?! Chapter 3 introduces static methods, exceptions, the Java Archive tool, and encourages you to browse the API documentation. Writing object-oriented programs begins with Chapters 4 and 5. In-depth discussion of Java syntax is sprinkled around in each chapter, and given more attention after Chapter 6, which introduces designing and testing object-oriented programs. Sound crazy? It might be crazy enough to work.

The material is presented in easy to understand language, and I understood most of the explanations the first time I read them. However, I really think that if I had no previous experience with Java at all, I would have freaked out at the end of Chapter 3 when asked to modify a sample program so that it "uses a nested while loop and a try/catch statement to catch the exception that may be thrown by the parseDouble method". Not for the faint of heart. I like this book, and I think it can deliver as promised. A person who wants to learn Java quickly would get a lot out of this book. Their code might not be pretty, but it would probably run.

Discuss book in the Saloon More info at Amazon.com




An Introduction to Software Construction with Java
by Jaime Nino, Frederick A. Hosch


Wiley
1 edition
May 2001
784 pages

Reviewed by Peter Tran, June 2001
  (7 of 10)


It's not often a book causes me to reminisce about my journey to become a Professional Programmer. During those youthful days I would read any programming books I could get my grubby little fingers on. Most were beyond my comprehension; while others were not worth the paper they were printed on. And then there were those books that made everything just so simple that it was hard not to understand the subject matter.

"An Introduction to Programming and Objected Oriented Design using Java" falls neatly into this third category. If you've been programming for several years, this book may bore you, because it starts out assuming that the reader has very little knowledge for the art/science of programming. It then gradually introduces each programming concept in a well thought out process. I've always been a proponent of the ideal that if you want to be a programmer, you have to practice programming. It is a skill that can be acquired and only improves with practice. I'm glad to see that the authors also believe in this philosophy and have added numerous exercises at the end of each chapter.

Personally, I enjoyed reading this book and reviewing some of the basic principles of programming. I believe all aspiring professional programmers should first establish a strong foundation on some of the basic principles of programming. In many ways, this book will help you lay that first brick.

Discuss book in the Saloon More info at Amazon.com




Java Examples in a Nutshell
by Flanagan, David.


O'Reilly
1 edition
January 1997
397 pages

Reviewed by Paul Wheaton, January 2000
  (5 of 10)


There have been many occasions that I could use an example and I have turned to this book. On no occasion did the book have an example for me. Bummer.

Discuss book in the Saloon More info at Amazon.com




The Java Programming Language
by Arnold, Ken.


Prentice Hall PTR
third edition
June 2000
704 pages

Reviewed by Kathy Sierra, May 1999
  (2 of 10)


Not a very *fun* book to curl up with by the fire on a Saturday night with a cafe mocha, but it comes from Those Who Know and is a great way to double-check your facts. It's still friendlier (but less thorough) than the Java Language Specification (JLS).

Discuss book in the Saloon More info at Amazon.com




1001 Java Programmers Tips
by Chan, Mark C. / Griffith, Steven W. / Iasi, Anthony F.


Jamsa Pr
unknown edition
January 1997
624 pages

Reviewed by Kathy Sierra, May 1999
  (2 of 10)


I was writing and delivering Java applets way before I knew much about Java... just from reading these tips. I love this book! (even though it's OLD). It's still worth it, ESPECIALLY if you need to deliver applets that will run in all browsers (using 1.02-safe code). The book includes application tips as well. The publisher is NOT going to update this book, but they do have plans for a new book due fall of '99 called The Java Programmers Bible (not the same as IDG's Java Bible) and it will have 1,500 tips! (Still no sign of it January 2000 and the older book is now out of print)

Discuss book in the Saloon More info at Amazon.com




Java 3D Programming
by Daniel Selman


Manning Publications
1 edition
February 2002
400 pages

Reviewed by Thomas Paul, April 2002
  (9 of 10)


The Java 3D API from Sun provides an object oriented abstraction around OpenGL and DirectX functions. Sun provides a fairly good introduction to Java 3D in their documentation. However, it can be difficult to find more advanced information on Java 3D as some of the best information can only be found in newsgroups. This book provides the information that anyone working with Java 3D absolutely needs. The author has covered all the bugs, workarounds, pitfalls, design problems etc. that aren't found in the Sun documentation. Starting with the basics of 3D graphics programming, the book moves quickly on to the heart of the Java 3D API, the Scenegraph. The author does a good job of explaining this key class and how to use it to create 3D scenes. The book then moves on, to explain creating of geometric shapes, defining light sources, creating textures, attaching behavior to objects, interacting with objects, and much more. Each chapter contains code samples highlighting the topics of that chapter. As a novice to Java 3D, I was overwhelmed for a little while but the code samples and the author's excellent explanations of the code kept me from becoming lost. This is definitely a book that should be read in front of the computer while working on the examples. Any experienced Java developer (even if you have no experience in graphics programming) who is interested in developing 3D games or scientific or architectural 3D applications should get this book.

Discuss book in the Saloon More info at Amazon.com




Java 2D Graphics
by Jonathan Knudsen


O'Reilly
1 edition
May 1999
366 pages

Reviewed by Paul Wheaton, January 2000
  (8 of 10)


Java 2D used to be a separate library and is now included in the java core libraries. It adds a lot of functionality and can be hard to work with unless you have a guide. This book is the best of the 2D books out there. I tried to do 2D without this book and did a lot of struggling. The book made things seem pretty simple.

Discuss book in the Saloon More info at Amazon.com




Java Foundation Classes
by Matthew Nelsdon


Computing Mcgraw-Hill
unknown edition
May 1998
576 pages

Reviewed by Paul Wheaton, January 2000
  (5 of 10)


I used this book when I started with Swing in early 1998. It was okay at helping with transitioning from AWT to Swing, but I didn't care for it as a reference.

Discuss book in the Saloon More info at Amazon.com




A Programmer's Guide to Java Certification
by Khalid Azim Mughal, Rolf Rasmussen, Khalid Azim Mughal, Rolf Rasmussen


Addison-Wesley Professional
second edition
August 2003
672 pages

Reviewed by Thomas Paul, October 2004
  (9 of 10)


If you are studying to become a Sun Certified Programmer for the Java 2 Platform 1.4 this book will help you to receive not just a passing grade but an excellent understanding of the intricacies of the Java programming language. Mughal and Rasmussen aren't satisfied with simply giving you a minimal understanding of Java so that you can pass a test. They are interested in helping you to understand the language at a deeper level. After all, it is much easier to pass the certification exam when you actually understand the material rather than when you have simply memorized a lot of details.

I'll give you an example of the level of detail that the book covers. Section 5.2 of the book covers Selection statements. The section starts with a description of the if statement followed by an activity diagram which explains the flow of the statement. The authors then show a simple example followed by a clear explanation of the if statement. Then they do the same with if-else, this time using several examples. The same level of detail follows for the switch statement, again providing clear text, with a simple activity diagram, followed by several well explained examples. Finally, the section ends with several review questions. What this means is that this book can serve you well even after you have passed the certification exam. You will be hard pressed to find a better written reference.

The book covers all the information you need to pass the certification exam and covers the material needed to connect all the pieces together. The included CD has several mock exams with questions that will help you understand the type of questions that you will face on the actual exam. If you do well on the mock exams you will do well on the real thing. Overall, this is an excellent book for studying for the Java certification. But it is such a good reference that you will want to keep it nearby even after you have passed the certification.

Discuss book in the Saloon More info at Amazon.com



Addison-Wesley Professional
second edition
August 2003
672 pages

Reviewed by Andrew Monkhouse, September 2003
  (9 of 10)


This is an excellent book for experienced programmers who wish to learn how to program in Java and, in so doing, study for the SCJP exam.

Since this book is targeted at the experienced programmer, it does not attempt to spoon feed the reader. Whatever topics are under discussion are explained quickly and concisely, then sample code is supplied to demonstrate the topics. It seems assumed that the experienced programmer will be able to correlate the sample code back to the discussion, as the code is not pulled apart line by line.

The book uses ample UML diagrams to describe class hierarchies, state transitions, and event sequences, however they are not relied upon within the text, so someone not familiar with UML will not be disadvantaged.

Someone who wishes to learn Java beyond the bare minimum required to pass the SCJP will benefit from the author's additional information provided. For every topic in the SCJP, the authors have picked topics that are related and are likely to be useful to a Java programmer.

A word of warning to potential purchasers though: this book will not spoon feed you, you will not get hints about the exam questions, and you will have to be prepared to experiment with the supplied code and textual descriptions of code. The author's do cover all the exam objectives, but they do not focus on getting you passed: they focus on teaching you how to program with Java.

Discuss book in the Saloon More info at Amazon.com



Addison-Wesley Professional
1 edition
August 1999
688 pages

Reviewed by Tony Alicea, October 2000
  (10 of 10)


I have to say that I liked the book very much. It is not for beginners that don't know programming already, but instead it is for those (especially C) programmers that prefer that the new programming language be presented in a more formal manner.
The book's style is academic and I would see it being used in a four-year University college in a Java class for students of Computer Science. The review questions, which are dispersed over the chapters, are really good, and the answers are very well explained in an appendix.
This is a book that goes way beyond of what is strictly necessary to pass the Sun Certified Programmer for the Java 2 Platform examination, which is something I like. (I don't believe in 'bare minimums'.)
The few times that I had to e-mail the authors, their reply came promptly and to the point, including code examples. This is not what you usually get with other books. Some books don't even have an errata web page. This one, of course, does, with credits to all who helped them.

Discuss book in the Saloon More info at Amazon.com




Making Sense of Java
by Bruce Simpson, John D. Mitchell, Brian Christeson, A. Rehan Zaide, Jonathan Levine


Prentice Hall PTR
1 edition
June 1996
159 pages

Reviewed by Cindy Glass, August 2002
  (8 of 10)


Amazing. This book was published in 1996, and I read it on a lark, intending to get some fun out of the last chapter on The future of Java . Instead what I found was that the presentation was excellent and still entirely relavent.

Of course the discussion is kept to basic java concepts and applets J2EE was not really invented at the time, but what was presented is STILL an excellent summary for folks that want to understand what java is all about without the need to dip into the super-technical details of the language.

The book is about 150 pages and covers the basic concepts of the internet, Object Oriented languages, portability, applets, the Java Virtual Machine, developer productivity, security, copyright issues, the big-time players in the java field and finally a look into the possible future of java.

You can bet that I am going to share this book with a few of my managers who seem to get cross-eyed whenever the word java is mentioned. Yes, there are some who have been SO encased in the mainframe world that they still do not understand what the fuss is all about. I believe it will help them come up to speed enough that they can understand some of the issues and thinking behind decisions.

Discuss book in the Saloon More info at Amazon.com




Java, XML, and the JAXP
by Arthur Griffith


Wiley
1 edition
January 2002
216 pages

Reviewed by Valentin Crettaz, August 2002
  (10 of 10)


On one side, the Java language has been designed to write portable applications. On the other side, XML has been designed to contain portable data. It is natural that those two technologies had to meet at some point. This book provides a very comprehensive guide to Java and XML programming using Sun's reference implementation of the Java API for XML Programming (JAXP). The book is structured into four logical parts. First, in chapters 1 and 2, XML concepts and syntax are briefly introduced. Chapter 3 sheds some light on the SAX and DOM API. The author then shows how to parse, read and manipulate XML data using SAX in chapters 4 and 5. Chapters 6 and 7 deal with how to parse, read, manipulate and edit an XML document with DOM. Chapter 8 introduces XSL Transformation as a means of transforming an input XML document into any kind of output document. Finally, in chapter 9, the author shows how easy Java and XML development gets when using Ant build scripts. Basically, I really liked the introductory character of this book as well as the provision of a substantial amount of simple examples that are kept to the point. The content of the book is both clear and simple, and contains very few typos.

Discuss book in the Saloon More info at Amazon.com




Java How to Program
by Paul J. Deitel, Harvey M. Deitel, Paul J. Deitel, Harvey M. Deitel


Prentice Hall
third edition
December 1999
1355 pages

Reviewed by Mary Jane Swirski, August 2002
  (7 of 10)


Positives:
At end of each chapter you are given a review test (answers are provided), in addition there are many exercises to work on at the end of each chapter, however, answers are not provided, but if you work through the exercises - you begin to feel like a java-guru. The authors also provide excellent support, I had difficulty with 2 questions and the authors responded to & corrected my code!

Negatives:
Difficult to read, would not recommend this to a "newbie", it is probably more suitable for an "intermediate" programmer. The chapters on "classes" and "OO concepts" very poorly written (I had to switch to another book to learn OO concepts & classes).

Discuss book in the Saloon More info at Amazon.com



Prentice Hall
fourth edition
August 2001
1546 pages

Reviewed by Thomas Paul, September 2002
  (7 of 10)


Deitel & Deitel books are impressive. They are impressive in size and scope (not to mention weight). How can one describe a book that starts with "What is a computer?" and ends with a discussion of the Java Media Framework? The book is as complete as you would want in an introduction to Java. It is more than 1500 pages plus bonus chapters on the included CD. The book covers virtually everything in J2SE, gives a good primer on object oriented programming, and covers design patterns and UML. There's enough information in this book for two semesters of Java. Perhaps this is the problem with this book. All this scope, all this information is just too overwhelming. Trying to use this book to self-teach Java would probably be too much. This is the kind of book that needs a steady guiding hand to point out the important information. The book even starts out hard, throwing the reader right into Swing which is used throughout the book. But this book is good. Code examples are everywhere and they are very well explained. The publisher even uses multi-color syntax highlighting to make it easier to read the code. Virtually every line of code is explained. It is almost impossible to turn a page and not find either code samples or a diagram. If you are planning on teaching a Java course and you are looking for a textbook this is one book that would make a good choice.

Discuss book in the Saloon More info at Amazon.com




Bug Patterns In Java
by Eric Allen


Apress
1 edition
October 2002
264 pages

Reviewed by Sujatha Rajagopalan, October 2002
  (7 of 10)


"Aim to write programs that are bug free". It is easier said than done.This book will be of special help to the Java developers and programmers who aim to develop robust programs. As developers and testers of Java applications multiply every day, it would come very handy to give them the symptoms and clues to detect a bug and make sure the code takes care of it smoothly. Several bugs go undetected in the real world due to the lack of time allotted for testing and debugging due to financial and other constraints. The author has thrown light at the importance of unit testing and debugging and explains a scientific approach to the same. He recommends extreme programming techniques to make the debugging process very simple yet sufficient.

The core portion of the book has a good structured approach to attach unique names to each bug and explains the symtoms and cure too. The initial part of the book concentrated on why debugging and testing was important. There was a big jump when the author goes into more technical details in Java codes and examples. Thats where the reader who has only a minimum knowledge in Java gets lost. This book cannot be recommended to developers in their learning phase. It focuses only on the audience who are Java literates who have been intensively coding in the same. It can be recommended for those Java programmers who want to become better Sherlock Holmes in detecting bugs in Java !

Discuss book in the Saloon More info at Amazon.com




Java 2: A Beginner's Guide
by Herbert Schildt


McGraw-Hill
1 edition
November 2000
570 pages

Reviewed by Janet Wilson, November 2002
  (9 of 10)


If you have absolutely no knowledge of Java and:
1) want to learn Java 2 (J2SE) in a non-threatening way,
2) don't have alot of $$$ to spend on a book
3) don't mind that Swing is not covered
-->then run to buy this book!

I like how Schildt builds upon the reader's knowledge of the basics before moving on to the more difficult concepts. His explanations embedded in the code examples is very helpful. His coverage pertaining to classes, methods, inheritance, and polymorphism is very comprehensive.

I found his style of writing very clear and the font easy to read. Unlike some other books, I did not find errors in the text.

As the title implies, this IS very much a beginner's book but a very good one!

Discuss book in the Saloon More info at Amazon.com




The Java 3D API Specification
by Henry Sowizral, Kevin Rushforth, Michael Deering


Addison-Wesley Professional
second edition
May 2000
652 pages

Reviewed by Nathan Pruett, November 2002
  (8 of 10)


This book is a very good reference to the Java 3D API. It goes a step beyond the JavaDocs and whitepapers available from Sun's site and gives detailed explanations of every class in the entire Java 3D API. Scene Graphs, Behaviors, Geometries, Attributes, and the rest of the API are covered in detail. It even has chapters on input and sound devices, and appendices on the inner workings of Java 3D, covering topics such as 3D Geometry Compression, View Model Details, and equations used.

However, I would not recommend this book to beginners... there is an overview of the Java3D package, but unless the reader is familiar with 3D graphics (and Java) they will quickly become lost.

I also wish that more code examples were provided illustrating the topics as they were discussed. Example code is provided on the CD, but it is hard to pull the pertinent sections out of the example programs. Code snippets are also provided to illustrate some concepts, but it is a difficult task to figure out what you need to do to get these to actually compile and work.

Another problem is that this book covers the 1.2 Java 3D API, but the 1.3 API has been released. So some people may want to wait for a newer edition of this book to come out. Overall, I would recommend this book as a good reference book for people who really need to have a good understanding of the Java 3D API.

Discuss book in the Saloon More info at Amazon.com




C# for Java Developers
by Allen Jones and Adam Freeman


Microsoft Press
1 edition
August 2002
576 pages

Reviewed by Matthew Phillips, November 2002
  (6 of 10)


I like a lot of things about this book. The topics on the back cover are covered pretty well. It lays a solid foundation for any Java developer to learn C#. There are a lot of sample code snippets and they are explained quite well. There are quite a few tables comparing the Java API with the complimentary C# API to enhance the accompanying text.

There are a few things that I didn't like about this book. I found myself having to refer to the class libraries on Microsoft's web site pretty often to get the code running. Overall I felt that this enhanced my learning, but I would have preferred to get it running right from the book. The book really doesn't provide any kind of introduction to Visual Studio.NET. A brief introduction would have enhanced the book very well, but it is not necessary to have Visual Studio to run most of the code. A big negative is the chapter on database connectivity. To run any of the code you need to have access to either Visual Studio.NET or SQL Server. You also need to know how to use them. I found that to be a major drawback.

I feel pretty comfortable recommending this book to anyone who wants to use their Java knowledge to get a quick introduction to C#.

Discuss book in the Saloon More info at Amazon.com




Java Programming With CORBA
by Gerald Brose, Andreas Vogel, Keith Duddy


Wiley
third edition
January 2001
720 pages

Reviewed by Nathan Pruett, December 2002
  (9 of 10)


If you re a Java programmer that needs a good introduction to CORBA, get this book! The Third Edition of Java Programming With CORBA has been updated to cover CORBA 2.3, and much more material has been added. Up-to-date information about CORBA programming in Java has been hard to find. This book explains everything you need to know, and does so with a level of detail that is impressive.

CORBA programming can get confusing with all the acronyms being thrown around: OMA, POAs, IDL, ORBs, PSS, and CCM, just to name a few. This book helps you wade through the alphabet soup, and provides in-depth explanations of exactly what CORBA does, the mapping of IDL to Java, what the ORB provides, how to program a POA, and how to use the Naming, Trading, Event, Notification, Security, and Persistent State Services. Information on security, performance, and scalability is also covered. Lots of code examples are provided throughout the book that will give you a concrete illustration of how to apply the concepts you are learning.

I would highly recommend this book to anyone who needs a good introduction to CORBA, or needs to brush up on new features added in CORBA 2.3.

Discuss book in the Saloon More info at Amazon.com




Java Development with Ant
by Erik Hatcher, Steve Loughran


Manning Publications
1 edition
August 2002
672 pages

Reviewed by Michael Ernest, February 2003
  (9 of 10)


Maybe it's me getting tool old or too out of step with books on popular tools, but I found this guide informative, thorough, and quite tedious to read.

The information is fine, although it has that ring of authorship by people who are too close to the technology. That is, while they do strive to give practical applications of Ant in a variety of contexts, sometimes I feel like I'm reading a paraphrased specification. The coverage of related tools is pretty cool, actually, and it's important since Ant is a useful integration glue. At the same time, I stack this book next to my O'Reilly guide on make, and wonder why it was necessary to go into so much detail.

I didn't benefit from so much example work, which really boils down to yet more XML tags. At some point it would have been nice if the authors had said a little more about Document Type Definitions and then left some topics as exercises to the reader.

It's a fine reference and referral book; but I do think it could have been shorter and more to the point.

Discuss book in the Saloon More info at Amazon.com




Data Structures and Algorithms in Java
by Robert Lafore


Sams
second edition
November 2002
800 pages

Reviewed by Thomas Paul, February 2003
  (9 of 10)


Just about every Computer Science program requires a course called "Data Structures and Algorithms". In order to become a better programmer you must understand the information provided in this course. This book was written as a textbook for a "Data Structures and Algorithms" course and all the expected topics are covered; arrays, queues, stacks, linked lists, trees, hash tables, heaps, sorting, recursion, and searching. Whether you are a teacher looking for a text, a student who wants a better text than the required one, or someone who wants to learn more about programming, this book is an excellent choice. By using Java, all the complications of C++ are eliminated and the author's crystal clear explanations come shining through. And the author's explanations and examples are excellent. For example, the chapter on link lists explains what a linked list is, what problems it is supposed to solve and what problems it fails to solve, and then shows how to implement your own link list. The author provides a set of applets to visually illustrate the topics covered in the book. There are questions at the end of each chapter and answers are provided. This book is not going to explain the Collection classes or help you learn the API. What this book will do is help you get a deeper understanding of what data structures are, how they work, and what performance sacrifices must be made in order to achieve better overall performance in your programs.

Discuss book in the Saloon More info at Amazon.com




Java How To Program
by Harvey M. Deitel, Paul J. Deitel


Prentice Hall
5th edition
December 2002
1536 pages

Reviewed by Thomas Paul, March 2003
  (8 of 10)


Once again, Deitel has published a very impressive book. This new edition has been updated for Java 1.4 with, among other topics, coverage of regular expression and NIO. In addition, chapters on JDBC, Servlets, and JSP have been added. The chapter on object oriented programming and polymorphism has been rewritten and expanded into two chapters. The book has been cleaned up with redundancy removed in order to keep it around 1500 pages. Overall, the book is as complete as you would want in an introduction to Java. The book covers virtually everything in J2SE, gives a good primer on object oriented programming, covers design patterns and UML, and even gives an introduction to server side development. There's enough information in this book for at least two semesters of Java. All this information can be overwhelming but the authors use extensive, well commented color coded program samples to explain each topic. It is almost impossible to turn a page and not find either code samples or a diagram. In addition, there is a natural flow from topic to topic. This book was written as a college textbook and it has a college textbook "feel". Each chapter has well thought out exercises but the solutions must be purchased separately. A lab manual for this book is also available (release date, July 1, 2003). If you are planning on teaching a Java course and you are looking for a textbook this book would make a good choice.

Discuss book in the Saloon More info at Amazon.com




MySQL and JAVA Developer's Guide
by Mark Mathews, Jim Cole, Joseph D. Gradecki


Wiley
1 edition
February 2003
432 pages

Reviewed by Gregg Bolinger, March 2003
  (9 of 10)


Mark Mathews is the creator of the mm.mysql JDBC Type IV Driver. He was then hired by the MySQL Team to continue his development of the driver which then became Connector/J. What better person to co-author a book on MySQL and JAVA? I was really excited to get this book because I use MySQL and Connector/J for all of my JAVA Database needs. The first 5 chapters were pretty much review for me with the exception of some minor MySQL specific details that were really helpful. I learned a few things about MySQL that I had missed trying to get through MySQL's fairly cumbersome documentation. I found the remaining half of the book super informative and fairly rich for a "Getting Started" type of book. The appendix alone is worth its weight in gold since it contains all the data type mappings from MySQL to JAVA. This book also helped me learn how to use Connection Pools which I had not used until now. All the examples are straight forward and easy to understand. The book covered precisely what I expected from the title. I would recommend this book to anyone that wants to get started with JDBC and MySQL. However, I would not recommend this book to someone already fluent in these technologies. This is definitely a beginner to intermediate level book.

Discuss book in the Saloon More info at Amazon.com




Developing Java Web Services
by Ramesh Nagappan, Robert Skoczylas, Rima Patel Sriganesh


Wiley
1 edition
December 2002
784 pages

Reviewed by Thomas Paul, March 2003
  (9 of 10)


The cover of this book says, "Timely. Practical. Reliable." and that is a good description of the book. It covers the current state of Java APIs for web services, it gives plenty of well thought out examples, and it provides enough information to actually make the alphabet soup of acronyms understandable. The book starts with an introduction to web services. The next section covers web services architecture and the standard technologies of SOAP, WSDL, and UDDI. Interoperability with non-Java applications is demonstrated with a .NET example. The book is written by three Sun employees so it does tend to be a bit Sun-centric as the next sections shows. The Java Web Services Developers Pack (JWSDP) is given plenty of coverage. JAXP, JAXB, JAXM, JAX-RPC, JAXR, may be just acronyms when you get this book but after reading the six chapters covering the JWSDP they will be technologies that you understand. A case study wraps up the six chapters putting the whole thing together. The book ends with a chapter on security and a look at Sun ONE. The book is full of examples demonstrating how to use each of these technologies. When you read a line such as, "The real fun is understanding how the EncryptDecrypt class works," you know you are dealing with authors who love code. For developing Java web services you will be hard pressed to find a better book than this one.

Discuss book in the Saloon More info at Amazon.com




Wireless Java: Developing with J2ME
by Jonathan Knudsen


Apress
second edition
February 2003
384 pages

Reviewed by Mark Spritzler, March 2003
  (9 of 10)


Now, what's this new fangle, big city, ruckus we keep hearing about wireless Java. First they invent electricity, now it's all done without wires.

So I decided to find out and read Jonathan Knudsen's "Wireless Java: Developing with J2ME"

Now, I know that cell phones and PDA's are limited in memory and that any API for developing on these systems had to be streamlined, but I also expected it to be more difficult to learn. However, using this book, I was able to begin writing my first MIDLet in just 2 days. And it was an actual, production, working, business MIDLet, that we can use on our ranch.

The section on game programming for J2ME is exceptional. Especially for someone, like me, that has never understood how to write a game. It makes me really want to write one.

The book is very easy to read, you won't find yourself re-reading a paragraph because you didn't understand. Jonathan has a very smooth elegant writing style that not only instructs you, but it keeps you reading on. I didn't want to put it down, well except for the strong urge to start programming.

It has been a really long time that I have read any programming book that makes me want to code. But my brain is daydreaming of MIDLets after MIDLets that I want to write.

Discuss book in the Saloon More info at Amazon.com




Java Enterprise Best Practices
by Jason Hunter, Bret McLaughlin, Hans Bergsten, et al


O'Reilly
1 edition
December 2002
288 pages

Reviewed by Ajith Kallambella, March 2003
  (8 of 10)


An appetizer that leaves you hungry for more.

Patterns and best practices have been around for a long time. They solve problem domains not directly addressed by the language itself ie., repeatable solutions to family of application development issues -- be it architecture, deployment or testing. For a complex platform like J2EE, use of best practices can make or break a project.

Just what the doctor ordered - Java Enterprise Best Practices is a collection nuggets of wisdoms. It is a compendium of idioms classified based on various enterprise Java areas written the most acclaimed authors in the field (Jason Hunter, Bret McLaughlin, Hans Bergsten et al). Ranging from most widely used EJBs to the latest additions such as JMX and JSTL, each chapter presents the reader with most widely accepted norms of using technologies such as - EJB, Servlets, JDBC, XML, RMI, JMX, Internationalization, JSP, JavaMail. Chapters on XML and RMI are the best of the lot.

I was surprised to note the omission of JMS, given that its popularity when compared with other things such as JMX or JSTL. The last chapter on performance tuning lacks depth and reads more like hastily scribbled notes.

Can best practices be argued? Absolutely! The first chapter of the book says just that. It is important to bear that in mind while you read through the chapters.

While a seasoned J2EE developer idioms may find a few things trivial, it is quite a good reference to keep handy if you are developing real-life applications.

Discuss book in the Saloon More info at Amazon.com




Java Extreme Programming Cookbook
by Eric M. Burke and Brian M. Coyner


O'Reilly
1 edition
March 2003
352 pages

Reviewed by Frank Carver, October 2003
  (8 of 10)


This book covers a very similar selection of tools and techniques to "Java Tools for Extreme Programming" by Hightower and Lesiecki, and in a broadly similar way. Both use the currently fashionable idea of Extreme Programming (XP) to attract readers to a collection of short pieces about a bunch of useful tools for Java programming.

The XP stuff is covered quickly at the start, the meat of the book is in the "recipes", which walk you through configuring and using tools such as Ant, JUnit, Cactus etc. to build, unit-test and manage the development of a Java project.

The tools and tips the authors have chosen to include are a good representation of current practice, but I have a few reservations about the organization and structure of the book. My biggest worry is whether the target reader is actually likely to find many solutions. The authors seem to assume that everyone will pore over the several pages of "contents" at the front of the book every time they hit an obstacle, but in my experience they are just as likely to flip through pages or head for the index at the back, neither of which works particularly well. Worse than that, they may never think to look in the book in the first place - the "Extreme Programming" in the title may help it sell, but it's not something that jumps to mind when you are struggling to get Ant to deploy a web application to Tomcat.

Discuss book in the Saloon More info at Amazon.com



O'Reilly
1 edition
March 2003
352 pages

Reviewed by Jessica Sant, April 2003
  (7 of 10)


Java Extreme Programming Cookbook consists of a bunch of "recipes" for helping you to build and test Java programs through XP. Each recipe consists of a Problem, Solution, Discussion and a "See Also" pointer to where you can find more information about the topic. The recipes cover the following opensource technologies: Ant, JUnit, HTTPUnit, Mock Objects, Cactus, JUnitPerf and XDoclet.

Want define a classpath using Ant? Check out recipe 3.7. Wanna test a form in your web application? look at recipe 5.9. This book gives a bunch of good strategies to commonly encountered problems, but it's by no means a complete reference to the different technologies. But it will definitely get you started, and you'll be able to apply these different recipes to your own development environment.

The organization of the recipes and consistency between the chapters is where this book lost points in its rating. Want to know how to run JUnit with Ant? look in the Ant chapter. Want to know how to run HTTPUnit with Ant? Look in the HTTPUnit chapter. The Cactus chapter has a nice recipe about ?When not to use Cactus? and the JUnitPerf chapter has a nice recipe about "When to use JUnitPerf"? it would have been VERY helpful to have such sections for EACH technology discussed in the book, but alas the book is inconsistent.

Overall, I think this is a good book to jump-start you into an XP development environment using open source technologies.

Discuss book in the Saloon More info at Amazon.com



O'Reilly
1 edition
March 2003
352 pages

Reviewed by Simon Brown, July 2003
  (9 of 10)


I've been reading this book for the past couple weeks and have to say that it's another great book from O'Reilly, although upon seeing the title I was slightly skeptical for a couple of reasons. First of all, I already have the Java Tools for XP book and secondly, the title is slightly misleading.

As regards the title of the book, I have the same complaint as the other book, namely that "XP" is unnecessarily used in the title. Since XP is currently a buzzword, I imagine that this was probably to attract a wider audience. Okay, some of the book does talk about XP and practices such as continuous testing and integration, but the book could have easily been titled "Java Open Source Tools Cookbook" because that's essentially what it is.

Title aside, the content of this book really shines through. Where the Java Tools for XP book talks about tools like JUnit, Ant, Tomcat, etc, this book provides recipes for using those tools, with each recipe addressing a particular problem. For example, there are recipes for building with Ant, testing classes, structuring tests, testing paths through web applications and so on. Imagine a design patterns book but with open source tools. Each problem is explained and followed up by a possible solution. The tools that are covered include all of the major open source offerings (Ant, JUnit, Tomcat, HttpUnit, Cactus, etc) in addition to some other tools such as JUnitPerf that many people may not have come across.

While you can read this book cover to cover, I feel that its real strength is as a reference book to be kept on your desk during development. Also, I think that there is something in this book for everybody. For example, although I've used many of these tools before, I still picked up quite a lot from this book, particularly around some of the less common JUnit functionality and the Ant recipes around automatically starting Tomcat and checking that it's running. Regardless of whether you are doing XP, I would recommend this book to anybody starting out with open source tools or using them from day to day on a project.

Discuss book in the Saloon More info at Amazon.com




Java Data Objects
by David Jordan and Craig Russell


O'Reilly
1 edition
April 2003
380 pages

Reviewed by Ernest Friedman-Hill, January 2004
  (8 of 10)


Java Data Objects is simple and straightforward, and solves a real problem in an elegant way. Conveniently, this also serves as a description of this enjoyable book from some of the key JDO specification team members.

JDO is a recently standardized API for transparent object persistence. A standalone reference implementation is available, as are quite a few commercial and open-source versions that piggyback on relational databases and other storage solutions. JDO's popularity is growing rapidly because of its simplicity, ease of use, and scalability. "Java Data Objects" is a timely and practical treatment of this new API.

After a clear and accessible overview, this book first presents JDO in a tutorial style using a simple but nontrivial example application. Later chapters fill in the details where needed: for instance, a whole chapter is dedicated to the difficult topic of object identity.

The motivations behind JDO's development are explained well, and comparisons to other object-persistence solutions, including EJB container-managed persistence, are fair and balanced. One of this book's few flaws is that despite the authors' important roles on the standards committee, the rationale behind some of JDO's more puzzling properties are left unexplained. In particular, JDO requires that only a small subset of the standard Collections be supported by a JDO implementation, but this book doesn't explain how this subset was chosen.

All in all, an excellent tutorial and reference that will have you up and running with JDO in no time.

Discuss book in the Saloon More info at Amazon.com



O'Reilly
1 edition
April 2003
380 pages

Reviewed by Chris Mathews, May 2003
  (8 of 10)


The first thing to note about this book, is that it was written by David Jordan and Craig Russell, who happen to be key members of the JDO Expert Group (Craig was also the Specification Lead). This obviously built up my expectations for the book and I am happy to say that I was not disappointed.

This book does a great job explaining JDO in a vendor independent and portable manner. The first few chapters provide a high level overview of the JDO API and Architecture, read these if you just want to know what all the hype is about. The rest of the book is dedicated to describing all aspects of JDO in detail and clearly explaining how to apply them. JDO concepts are demonstrated throughout with the use of a single problem domain, which makes the numerous code examples flow easily and consistently.

My only major complaint deals with the final two chapters of the book, which focus on how to use JDO in application server environments. They are easily the weakest chapters of the book. I found myself questioning much of the advice given in these chapters and some of the terminology used was outdated. Ultimately, I feel that this book would have been better served without the final two chapters.

Despite some minor flaws, I would consider Java Data Objects is the definitive book on JDO. Anyone that is interested in JDO shouldn't miss this book.

Discuss book in the Saloon More info at Amazon.com




Head First Java
by Bert Bates, Kathy Sierra


O'Reilly
1 edition
May 2003
650 pages

Reviewed by Pauline McNamara, January 2004
  (9 of 10)


I wish this book had been around a few years ago when I first starting learning to program with Java. It's perfect. Aimed at not-quite-raw beginners with a little scripting experience, Head First Java hits the target. It covers the basics (and some) well enough for ambitious beginners too. If you're not new to Java you won't be disappointed either - while explaining programming concepts Sierra and Bates pass on lots of insight. You'll learn not only the what and the how, but also the why, as if a brilliant friend were sitting down with you at the computer, talking you through each point. Over coffee. Reassuring you about the slippery parts (with stuff like "don't worry about [insert tougher concept here] that comes later"). Lots of exercises keep you and your brain busy, with enough variety to pick the ones that suit you. True to the book's subtitle, "Your Brain on Java - A Learner's Guide", the authors prove that using conversational tone, lots of graphics, goofy humor and examples that you can relate to are really what make it stick, AND enjoyable. If it had a little thinner errata list and a little thicker index I'd call it flawless. Do your brain a favor and feed it this book.

Discuss book in the Saloon More info at Amazon.com



O'Reilly
1 edition
May 2003
650 pages

Reviewed by Thomas Paul, November 2003
  (10 of 10)


Who do Kathy Sierra and Bert Bates think they are? Don't they know that learning a programming language is supposed to be hard? Don't they know that it is supposed to involve suffering? Apparently not, as they have written a complete introduction to Java that is fun to read and easy to understand. If we don't stamp this out now, students will start expecting their teachers to be entertaining!

The book is an excellent introduction to Java. It covers all the typical topics of a basic introductory text and some extra including serialization, networking, and distributed computing. Each topic is covered in a fun way with important information highlighted. The authors use stories, fake interviews, pictures, nd assorted other clever techniques to catch your imagination and make the opics memorable. There are plenty of exercises (with answers) to help you check to be sure you understood each chapter. And there are plenty of fun programs to code including a cool music machine instead of the typical "reverse a String" exercises.

If you are looking for a traditional text then this book is definitely not for you. Instructors should think carefully whether this book fits in with their style of teaching. This book is not for everyone but if you want to learn Java and object oriented programming in fun and unique way then this is the book you want. Now I just have to figure out how to keep it away from my students.

Discuss book in the Saloon More info at Amazon.com



O'Reilly
1 edition
May 2003
650 pages

Reviewed by Johannes de Jong, June 2003
  (10 of 10)


Have you ever had the feeling that you simply missed the finer points of a subject that you studied? That was the case with me with Java and OO in general.

Gartner reckons that only 3 of every 10 programmers with my kind of background will make the "technology switch" from procedural to OO. This book can change that prediction.

The best way for me to describe this book is by using the teacher at school that we all have encountered in our school careers. You know the one that enthusiastically drew the most elaborate drawing on the black board to explain his point, the one that simply generates interest in his subject purely because of his sheer love of the subject he teaches. Now imagine that teacher in book form. The Head First way, you're favorite teacher in a book.

This book made me finally grasp some of the key concepts of OO that one needs to know to be able to fully use the capabilities Java has to offer.

If you are a Java programmer that has problems understanding the finer points of the language and OO in general I suggest you go out and buy the book.

I want to end with a word of caution. This book, because of its uniqueness, might not appeal to everybody. I suggest you browse the book before buying. You will immediately know if the book is for you.

(This review is based on the draft version of the book)

Discuss book in the Saloon More info at Amazon.com




Java Database Best Practices
by George Reese


O'Reilly
1 edition
May 2003
304 pages

Reviewed by Jason Menard, June 2003
  (8 of 10)


JDO or EJB? JDBC? BMP or CMP? EJB BMP with JDBC and JDO on a RDMS?

Have you ever been caught up in the alphabet soup of Java database programming APIs? Have you ever questioned which approach might be best suited for your particular application? Sure you pride yourself on your skills in crafting some pretty mean EJBs, but is that the best path to head down with your latest project? O'Reilly's new book "Java Database Best Practices" attempts to answer these questions and more.

For such a relatively thin book (267pp), it touches on a wealth of topics vital to the subject at hand. Reese lends his insights concerning database architectures, database design, transaction management, and persistence methods using JDBC, EJB, and JDO. While this isn't intended to be an introductory tome, you are also not expected to be proficient with all these APIs. As such, the latter third of the book contains tutorials on relevant J2EE APIs, JDBC, JDO, and SQL.

Reese does not exhaustively go into detail on every topic, each of which could probably warrant its own book. Rather he arms us with just enough information to make informed decisions about which method might best serve our applications. Aside from merely determining which set of APIs might be best suited in a given situation, Reese also points out several best practices to help guide us in design and implementation (for example, "use join tables to model many-to-many relationships").

I do have a couple of small complaints about the book. For one, "best practices" are highlighted throughout the text, but they are not enumerated or indexed in any manner. An enumerated list of these best practices would be welcome. Secondly, MVC purists will likely cringe at the JSP examples. While the architecture shown (JSPs as view and control, database access through taglibs) may be valid for small web applications, I don't feel it should be highlighted as a "best practice", particularly for enterprise applications. None of these complaints are major however, and do not overly detract from the value of the book.

"Java Database Best Practices" accomplishes what it sets out to do. This is a book that might be handy to have to pass around your development team in the design phase to get you all on the same page when making some critical choices. This book could also well serve those, such as managers perhaps, seeking a broad survey of Java database programming. I also feel that this book would make an excellent companion text for a college database programming course using Java. While "Java Database Best Practices" won't make you an expert with all of these APIs, it will certainly point you in the right direction.

Discuss book in the Saloon More info at Amazon.com




Java Developer's Guide To Eclipse
by Jim D'Anjou, Scott Fairbrother, Dan Kehn, John Kellerman, Pat McCarthy, Sherry Shavor, Jim D'Anjou, Dan Kehn, Scott Fairbrother, John Kellerman, Pat McCarthy


Addison-Wesley Professional
second edition
November 2004
1136 pages

Reviewed by Thomas Paul, January 2005
  (9 of 10)


The first edition of this book was excellent for plug-in developers and helpful, although not vital, to all others. Two things make this new edition even better than the first edition. First, plug-in development in Eclipse is now easy and so well explained in this book that there is no reason not to try it. Have you ever worked with an IDE and thought, "why isn't this function available in the pop-up menu" or "why doesn't it have this feature"? Developing a plug-in will allow you to customize Eclipse to provide the missing feature and this book will clearly explain exactly how to do that. Second, the section of the book that deals with developing with Eclipse has been improved with detailed chapters on team development including using CVS as well as an excellent example of integrating with Tomcat to develop an E-Commerce application.

The book is divided into two sections. The first 200 pages deal with using Eclipse and cover everything from the basics to complex team development issues. The next 600 pages cover everything you need to know about extending Eclipse. The book ends with 200 pages of exercises that give detailed, step-by-step examples. Five exercises deal with using Eclipse while the rest show examples of extending Eclipse. It is a big book that covers a lot of material but it covers it clearly and with plenty of examples. If you buy one Eclipse book, this should be it.

Discuss book in the Saloon More info at Amazon.com



Addison-Wesley Professional
1 edition
May 2003
896 pages

Reviewed by Thomas Paul, June 2003
  (8 of 10)


The authors of this book are part of a core IBM group formed to share knowledge of the Eclipse universal IDE. The first part of this book deals with using Eclipse from a Java developers point of view. I found this was not any more helpful than the documentation available on the Eclipse web site. Eclipse works extensively with plugins that can be integrated into the Eclipse environment to provide new functionality. I would have liked to see something on some of the more popular plugins such as those used to run application servers. Even a list of where to go to get plugins would have been helpful. Unfortunately, this part of the book only covers the basics of what comes with Eclipse and does not discuss any existing plugins.

The second part of the book, about 450 pages, covers writing your own plugins. This part of the book is excellent. It covers not just the basics, but virtually everything you need to know to write plugins. Whether you wish to code a new toolbar, editor, specialized view, or wizard, it is all covered in this section. With this book you will be writing plugins in a fraction of the time you would have otherwise spent. The book also contains exercises which allow you to test your new knowledge.

If your only goal is to use Eclipse then you don't need this book. If your desire is to write plugins then I wouldn't even try without it.

Discuss book in the Saloon More info at Amazon.com




Java Web Services Architecture
by James McGovern, Sameer Tyagi, Michael Stevens, Sunil Mathew


Morgan Kaufmann
unknown edition
April 2003
831 pages

Reviewed by Gregg Bolinger, July 2003
  (5 of 10)


This book should have been titled "1001 ways to use XML with JAVA". And it should have been 5 books. It took me forever to get through this 800 page book on Java Web Services. I felt there were way too many concepts to try and understand in one book alone. I also didn't see the need for an entire chapter on SOAP. There are plenty of SOAP books out there.

What I did like about this book were the examples. There were a lot of them and I won't buy a book without good, complete, working examples.

To summarize, there are better books out there for the money on Java Web Services.

Discuss book in the Saloon More info at Amazon.com




More Java Pitfalls
by Michael C. Daconta, et al


Wiley
1 edition
February 2003
300 pages

Reviewed by Salman Halim, June 2003
  (8 of 10)


This book continues where the first one left off; the items covered herein are given a more in-depth treatment than those in the first volume and include new Java technologies: J2EE, J2ME, EJB etc.

The layout of the book has been changed from its predecessor to consist of three big sections, one each for the client, Web and enterprise tiers.

There is still plenty of useful information here: for example, I found the breakdown of web.xml in item 35 and unique EJB primary key generation in (item 42) very informative.

One critique is that some of the items leave questions unanswered. As examples, item 13 suggests sealing JAR files to ensure precedence in class loading but doesn't really explain HOW to seal a JAR. Similarly, item 16 points out how Component.setSize() can't always be used to reliably set the size of components; it explains how to do it correctly, of course, but never really explains what setSize() CAN be used for!

While the book isn't error-free, they aren't major and don't detract from the value of the information.

Recommendation: get the book collectively and keep it as a reference, sharing it among friends or colleagues. A quick once-over to see the topics covered is sufficient, I think; a cover-to-cover read isn't necessary.

Discuss book in the Saloon More info at Amazon.com




Murach's Java Servlets and JSP
by Andrea Steelman, Joel Murach, Andrea Steelman, Joel Murach


Mike Murach & Associates
second edition
January 2008
758 pages

Reviewed by David O'Meara, April 2008
  (10 of 10)


The previous version of "Murach's Servlets and JSPs" was a good book, and this one is too.

The book is described for use as "Training and reference", and while books tend to be good for one purpose or the other I found this one did manage to accomplish both objectives. The information is presented in small, distinct and incremental sections, and each block of code is clear and concise. It also contains all of the important information required to get a good start developing Servlets. I also found the same layout worked well when accessing the information as a reference.

It was very amusing that the book managed to get through four whole chapters before addressing Servlets or JSPs in detail, but given that many people leap into Servlets while their other technical skills are still growing, this prelude will be valuable to many beginners. These chapters are spent introducing web programming with Java, setting up Tomcat and the Netbeans IDE, and a one chapter crash course in HTML.

All of the required topics are covered elegantly, and enough room is left over to provide the same level of coverage for the next level of knowledge such as SSL, JavaMail, connecting to databases, container managed security and even some raw HTTP.

While I would not usually consider 10 horseshoes for a programming resource, this one is less likely to be read and forgotten, and should be of use for the first few years of Servlet programming for the novice. Therefore it is easy to recommend adding this one to your bookshelf.

Discuss book in the Saloon More info at Amazon.com



Mike Murach & Associates
second edition
January 2008
758 pages

Reviewed by Christophe Verre, February 2008
  (9 of 10)


"Murach's Java Servlets and JSPs" covers a broad range of web development related topics such as servlets and JSP. It uses a two-page layout, with theory on the left page, and examples, figures, code, summary on the right page.

The book starts with a step-by-step installation of Tomcat 6, Netbeans and MySql, following with instructions on how to use each of them. Then starts the journey to web application development: Servlets, JSP, EL, JSTL, custom tags, filters, listeners. From scriptlets to the Expression Language, from MVC Model 1 to Model 2, using database, JavaMail, dealing with security, everything is clearly written and logically explained. I found that the chapter on custom tags could have been more polished, and a chapter on Tag Files would have been welcome too.

The icing on the cake is all the hands-on exercises. Each chapter concludes with a summary, and practical exercises. I strongly recommend downloading the sample applications and going through each exercise carefully, as it will certainly improve your learning experience. Moreover, the last section introduces a music store application to put all the freshly assimilated knowledge into practice.

This book is mainly aimed at beginners, but it is still a great refresher for experienced users. It is very practical, and will make Servlets and JSP fun to learn. It is so enjoyable that you'll finish reading it in no time. I wish I had such a book when I started developing web applications. Highly recommended.

Discuss book in the Saloon More info at Amazon.com



Mike Murach & Associates
1 edition
January 2003
642 pages

Reviewed by Thomas Paul, June 2003
  (9 of 10)


If you are looking for a book that is going to teach you Servlets and JSP in a very easy way with a lot of hand holding then you are looking for this book. The authors make the assumption that the reader knows the basics of Java but has absolutely no knowledge of internet programming.

The authors start by guiding the reader through the process of installing Tomcat (all the samples use Tomcat as the servlet engine) and creating a simple HTML page before they introduce you to Servlets and JSP. Servlets and JSP are covered separately and then working together in the Model 2 architecture. The one thing missing from this section is any mention of Struts or other MVC frameworks. Advanced topics such as using SSL and restricting access to a web site are covered very well and in a way that makes it easy to follow and understand. The authors even show how to write your own tag libraries. Unfortunately, no mention is made of JSTL. The authors show how to install and use MySQL and how to code SQL before moving on to explain using JDBC in a web application. The book ends with a complete sample application of an online store including secure credit card handling.

This is an excellent tutorial that will painlessly teach you how to write complex web applications. I doubt that there is another book available that makes the subject this easy to understand.

Discuss book in the Saloon More info at Amazon.com




Unit Testing in Java
by Johannes Link, Peter Froehlich


Morgan Kaufmann
1 edition
April 2003
325 pages

Reviewed by Jason Menard, February 2004
  (8 of 10)


Johannes Link's "Unit Testing in Java: How Tests Drive the Code" bills itself as "a practical introduction to unit testing for software developers." Link's book is very comprehensive and touches on most of the topics a developer will need to know about before setting off on his own, including some topics that have not been addressed in similar titles.

The first half of the book addresses basic techniques for unit testing. The author is a proponent of eXtreme Programming and test-driven design, and those concepts are explored as they relate to unit testing. This first part of the book is quite exhaustive and contains in great detail pretty much everything you would expect. One pleasant surprise here was a nice chapter on inheritance and polymorphism as it relates to unit testing. Link offers some excellent advice on this rarely addressed topic.

Once you've mastered the basic techniques, Link kicks it up a notch and addresses some more advanced topics relevant to our day-to-day lives as Java developers. The book discusses unit testing persistent objects, web applications, and GUIs, as well as rarely examined topics such as concurrent programs and distributed applications. As if that weren't enough, Link throws in an outstanding chapter on the role of unit tests in the software process which is necessary reading if you are attempting to integrate the book's practices into your own organization.

"Unit Testing in Java" isn't an overly large book, but it is certainly a dense book. The tone is academic and some of the phrasing is awkward, although it should be kept in mind that it is a translation from German. I like to think of "Unit Testing in Java" more as a text to be studied, rather than as a reference. However, there is so much that is good in here, that it is definitely worth the effort spent reading it.

Discuss book in the Saloon More info at Amazon.com



Morgan Kaufmann
1 edition
April 2003
325 pages

Reviewed by Frank Carver, July 2003
  (9 of 10)


This book starts by covering general techniques in unit testing, including when and why to do it, how to know if you are doing it right, and how it integrates with other development practices. This is good stuff, but mostly also covered in other books. The section on Mock Objects is especially well done though, illuminating an often misunderstood topic area.

The latter half is where this book shines. It tackles some of the really tough areas and does it very well. Singletons, database persistence, asynchronous services, concurrent and distributed systems, web applications and graphical user interfaces; all these are often skipped over as "too hard to test". If you've ever found yourself thinking something like that, you need this book.

This book is a translation from a German original. Although the translators have done a tremendous job with the technical content, sometimes a phrase or section title, especially in the initial introduction can seem very unusual. Don't be put off by the quirky language in the early chapters, the meat of the book is well worth reading and putting into practice. This book is a masterly example of how to convert programming theory into solid, practical advice.

Discuss book in the Saloon More info at Amazon.com




Java Web Services in a Nutshell
by Kim Topley


O'Reilly
1 edition
June 2003
600 pages

Reviewed by Valentin Crettaz, July 2003
  (8 of 10)


After the JavaOne 2003 conference, there is no more doubt that web services are one of the next big things that is going to gain ground in the distributed computing world. The advent of web services is said to be at least as big as the change from mainframes to the client/server architecture. In order to be prepared for this, developers need to quickly acquire plenty of practical knowledge. This book provides an in-depth coverage of how to go about programming web services using J2EE 1.4 and the latest release of Sun's Java Web Services Developer Pack (JWSDP). All this is coupled with an extensive quick reference to Sun's web services APIs.

The book first gives some insights on the purpose of web services and how they are architecturally organized. Then, it delves into the SOAP with Attachments API for Java (SAAJ), the Java API for XML Messaging (JAXM), and the client-side Java API for XML Registries (JAXR). It also investigates the Web Services Description Language (WSDL) and deeply explores the Java API for XML-based RPC (JAX-RPC). The use of JWSDP's tools and configuration files are examined and explained as well.

Summing up, this book nicely follows O'Reilly's "In A Nutshell" philosophy by being more of a "daily companion" to keep handy than a high-level tutorial. I recommend it to any developer willing to get or stay in touch with the new trends in web services development.

Discuss book in the Saloon More info at Amazon.com




Java Persistence for Relational Databases
by Richard Sperko


Apress
1 edition
July 2003
318 pages

Reviewed by Jason Menard, August 2003
  (6 of 10)


As the title indicates, this book takes a look at different methods in Java for persisting data to a relational database. JDBC, EJB CMP 2.0, ODMG 3.0, JDO, open source frameworks (Hibernate and Castor), and commercial frameworks (TopLink, CocoBase) are all given a look. The author touches on rolling your own persistence framework, and throws in a little bit about relevant design patterns and unit testing.

Overall this book left me with more questions than answers. Often we are told what the capabilities of a given library or framework are, but not how to make use of those capabilities. Frequently we are teased with a bit of information, only to be told that we need to go to another source to find anything of substance. Just as often, a promising topic such as unit testing the persistence layer is left inadequately addressed.

If you are looking for a broad overview on the book's subject, then this book may be for you. However, while this book ostensibly should help a manager or developer choose a persistence method suitable for his project, I'm afraid no guidelines are given as to when one particular method may be preferable to another. Although we can't expect a book such as this to be all encompassing, many sections in this book urge the reader to look elsewhere for more information. In this case, that might not be such bad advice.

Discuss book in the Saloon More info at Amazon.com




Bug Patterns in Java
by Eric Allen


Apress
1 edition
October 2002
264 pages

Reviewed by Nathan Pruett, October 2003
  (8 of 10)


This book boils thirteen of the most common bugs down to their root causes and formulates them as 'bug patterns'. Each bug pattern describes how to identify the bug by the symptoms it exhibits, why the bug is occurring, and gives one or more suggestions to fix it and prevent it from occurring again.

If the bug you are searching for isn't covered, the author also describes a methodical approach to tracking down bugs efficiently and quickly. Suggestions on how to prevent bugs from occurring in various stages of the development cycle are also presented, which are helpful even if you aren't currently searching for a bug in your code. Most of the suggestions are based on the XP development model, but the practices that are important are pointed out so they can be incorporated into any other style of development.

Even though debugging doesn't sound like a fun topic, the author has a very readable style and is able to get you excited about preventing and fixing bugs. The chapters have been very well thought out and the book is broken into topics very well.

This is a great book to partner with a 'best coding practices' type of book, like 'Practical Java' or 'Effective Java'. Those books are really good at describing how Java should be coded. This book gives examples of why those practices should be followed, and how to quickly get back on track when they aren't and something goes wrong.

Discuss book in the Saloon More info at Amazon.com




Java Power Source
by Luis A. Gonzalez, Charles R. Buhrmann


Best Power Source LLC
1 edition
October 2002
254 pages

Reviewed by Andrew Monkhouse, October 2003
  (8 of 10)


This book covers all the basics of how to program in Java, then provides an introduction into many specialized parts of Java.

This book is very light with only 250 pages. To cover such broad ground, the authors chose to leave out most code samples (available on the book's web site), opinions, experiences, or analogies. As a result, this book covers more topics than much larger books. And being much light, it is easy to carry with you.

The book is divided into four parts. The first part details how to write a Java program - from the low level keywords, through what makes up a class & how to use threads, up to common classes in java.lang and java.util.

The second part quickly covers GUI programming, describing the main classes of the AWT and Swing classes, and describing Applets and Graphics methods. The third part briefly describes the major classes of I/O, Networking, Databases, JSP and Servlets. Finally the book covers Mainframe issues and an introduction to Design.

Covering as much ground in sections 2, 3 and 4 means that they are not covered in depth. These sections will only give you a feel for what is possible, and give you clues where to find out more information.

All in all, a very good book - one that can be used to learn the basics of Java, and can be used as a refresher / reference guide to many of the capabilities of the Java language.

Discuss book in the Saloon More info at Amazon.com




Core Java Data Objects
by Sameer Tyagi, Michael Vorburger, Keiron McCammon, Heiko Bobzin, Keiron McCannon


Prentice Hall PTR
1 edition
September 2003
576 pages

Reviewed by Thomas Paul, December 2003
  (6 of 10)


Java Data Objects (JDO) is an alternative to JDBC that allows you to treat rows from a database as Java objects. The simplicity of JDO removes many of the complications involved with developing JDBC applications. This book does a decent job of covering the JDO specification and explaining how to properly use JDO. The book starts with an introduction to JDO and shows some examples of how to write code with JDO. The section on the object lifecycle isn't clearly explained having too much concentration on lists and not enough on explanations. The following chapters do a decent job of explaining the pieces of JDO. In addition to the basics, the book covers using JDO in a J2EE environment with a look at Enterprise JavaBeans, security, and transactions. A later chapter shows a comparison of JDO and JDBC. The authors wrap up with some tips, take a look at what might be coming in the future, and show a case study.

The authors do not look at any JDO implementations, which leaves their explanations in essence, hanging in mid-air. Although they show how to code in JDO they don't show what a programmer needs to do to hook their code in to a database. This means that without further reading, you can't run any of the examples supplied. Although the book is not bad and might be worth a read, it is not as clear or as well written as one might like.

Discuss book in the Saloon More info at Amazon.com




Objects First with Java
by David J. Barnes, Michael Koelling


Prentice Hall
unknown edition
October 2002
400 pages

Reviewed by Frank Carver, December 2003
  (9 of 10)


This book is intended to be a course text book for an introductory course in Java and Object Oriented Programming. The authors have made a conscious decision to cover the material in a different order to almost all other books on the subject. You won't find an initial chapter on classpaths, compilation and the main method, there's no pseudo-procedural "hello, world" example. The book leaps straight in to creating objects from classes, examining values and calling methods.

There is a trick to all this, of course. The book is based on a kind of Java development environment optimised for teaching called "BlueJ". BlueJ is a free download, and a copy is included on a CD with the book, along with all the source code examples. I've had a play with BlueJ, and it certainly makes important things like the distinction between a class and an object, and the inheritance structure of the code, much clearer than traditional IDEs.

If you are planning to teach a course on Java or OO, you should certainly take a look at this book. Even if you don't run the course exactly as presented, the approach is fascinating. If you are trying to pick up these tricky ideas on your own, this book might also be very useful. Even if none of those cases apply, the BlueJ software is still a really neat tool for prototyping.

Discuss book in the Saloon More info at Amazon.com




Art of Java Web Development
by Neal Ford


Manning Publications
1 edition
November 2003
624 pages

Reviewed by Thomas Paul, March 2004
  (8 of 10)


This book is about using frameworks for developing Java web applications. The author gives a thorough overview of some of the most popular frameworks and discusses the pros and cons of various web architectures. The discussion is almost exclusively in the Servlet/JSP realm with little discussion of back end applications servers. The audience that will find this book most useful are those who have some experience with Java web development and are looking to expand their knowledge of modern web architectures.

The first part of the book is a discussion of Java web architecture in general with a concentration on MVC architecture. The second part is an examination of some of the most popular frameworks in use today. This part is interesting as the author demonstrates the same application developed in the various frameworks. The section finishes with a list of criteria to use when evaluating any framework for your own development projects. The final part is a discussion of best practices in various aspects of a web architecture such as resource management, performance, and debugging. This section reads almost as a series of articles.

The book is not really a how-to guide to using the various frameworks. I had trouble getting a couple of the examples working exactly as provided and some of the discussion was a bit confusing. But the overall view of how to choose and then incorporate a framework into a well designed architecture makes the book a very worthwhile read.

Discuss book in the Saloon More info at Amazon.com




Java Testing and Design
by Frank Cohen


Prentice Hall PTR
1 edition
March 2004
544 pages

Reviewed by Andrew Monkhouse, April 2004
  (9 of 10)


This book is an excellent guide to testing web applications and web services, and will benefit all readers from someone just starting testing, through to experienced testers trying to test a particular service.

The first third of the book describes testing in general, and how it can be applied to web applications. The second part tackles different connectivity methods, from HTTP through XML & SOAP; from one off messages, through testing sequences of messages (including maintaining session data), from user testing, through performance testing. Each chapter describes the issues and the potential problems with testing, then provides a clearly detailed description of testing using the PushToTest open source test tool. The final third of the book details some case studies of tests that Mr. Cohen has been asked to devise.

My biggest concern with this book is that, despite it's title, it really has very little to do with Java. The tests definitely apply to applications written in Java, and java classes can be used by Mr. Cohen's test application, however the book equally applies to testing any networked service, regardless of the language it was written in! Of lesser concern is that there is practically no discussion about testing outside PushToTest testing framework (not a big concern since PushToTest is open source).

This does provide excellent insights into testing, and easy to use tools and explanations for performing the tests. I have no hesitation in recommending this book to anyone involved in testing networked applications.

Discuss book in the Saloon More info at Amazon.com




Java Transaction Processing
by Mark Little, Jon Maron, Greg Pavlik


Prentice Hall PTR
1 edition
July 2004
448 pages

Reviewed by Jeanne Boyarsky, July 2004
  (9 of 10)


"Java Transaction Processing" explains how to use different types of transactions in Java and J2EE programs. The authors state the audience is architects and senior developers. I agree and would recommend beginners read a different book first. There isn't any fluff in this book. They even separate the history into an appendix. The transaction coverage is quite thorough.

The introduction leaps right into transaction concepts. They range from the simple (ACID) to the complex (heuristics.) If you don?t understand anything in this introduction, read it again. The rest of the book assumes an understanding of all these concepts.

The authors balance the complex concepts with a large number of visuals. The most common are flowcharts and UML class/interaction/state diagrams. In chapter one, there are 31 diagrams (in 60 pages) alone. The authors provide an interaction diagram for most code snippets to give you a visual feel.

For J2EE topics, the authors provide a brief overview of the topic and end with a detailed example. They also cover features of technologies in the JCP. And what book would be complete without a chapter on web services? The authors include the alternatives and an excellent comparison of each.

The authors include many real world issues, best practices and tradeoffs. There is even an appendix on considerations when buying a transaction implementation and lessons learned. I spotted two minor editing typos, but they don't get in the way. I recommend this book to anyone who uses transactions.

Discuss book in the Saloon More info at Amazon.com




Better Faster Lighter Java
by Bruce A. Tate, Justin Gehtland


O'Reilly
1 edition
May 2004
262 pages

Reviewed by Valentin Crettaz, August 2004
  (9 of 10)


Next year, Java will finally get a second digit in its age. Over the past 10 years, Java has become one of the most popular language on earth. Popularity is usually a positive sign but it often hides a double-edged sword as an ever increasing indigestible amalgam of (*cough* reusable *cough*) Java libraries/frameworks flood developers everyday. No one will argue that it becomes increasingly difficult to make the right decisions when it comes to choosing existing libraries/frameworks for developing new products and/or refactoring older ones.

Don't worry, you are not alone. Bruce Tate and Justin Gehtland have made a tremendous effort of popularizing some fundamental principles that, when applied consistently, can considerably ease your life. They introduce the following basic principles: "Keep it simple", "Do one thing and do it well", "Strive for transparency", "You are what you eat" and "Allow for extension". They also show how two famous open-source frameworks, Spring and Hibernate, elegantly apply these five principles. Finally, they take their own "better-faster-lighter-java" medication by applying it on the Simple Spider project and show how the latter can easily be integrated into the infamous jPetStore application.

I definitely enjoyed reading this book even though it is not necessarily about pure coding. However, I would like to warn entry-level programmers as they might not enjoy the occasional philosophical tone. As well, they might not have had the chance to be frustrated yet which is THE assumption the authors make.

Discuss book in the Saloon More info at Amazon.com




Java Testing Patterns
by Jon Thomas, Matthew Young


Wiley
1 edition
October 2004
424 pages

Reviewed by Jeanne Boyarsky, October 2004
  (4 of 10)


"Java Testing Patterns" is one of those books where it appears nobody edited. Java class/method names and acronyms are used in lower/upper case interchangeably. Writing class names in all lowercase in a Java book doesn't inspire much confidence in the accuracy of the rest of the book. There are many typos and inconsistencies that make it hard to read.

The formatting is also very poor. The code looks good in Eclipse, but not in the book. Lines wrap without indentation. Similarly, UML diagrams are randomly split into pages. They are supposed to be on the web, but they aren't yet.

The intro states a target audience of "software engineers, engineering managers and software testers." This book is heavily reliant on reading code. After the first few chapters, I don't think managers or testers would benefit.

Speaking of code, I think the code is too verbose and complicated -- especially for a book. A few times, a simple JavaBean's source takes up one to two pages. One DAO takes up 12 pages. There is a test method with 16 branches. These examples make understanding quite difficult.

Now as for what the book does well. There are five good chapters on patterns. However, two are in essence the Factory and State patterns. The appendices are very good too. I wouldn't buy a book for three chapters and some appendices. Other books cover the material better. I would not recommend this book in its current edition.

Discuss book in the Saloon More info at Amazon.com




Effective Enterprise Java
by Ted Neward


Addison-Wesley Professional
1 edition
September 2004
496 pages

Reviewed by Jeanne Boyarsky, December 2005
  (10 of 10)


"Effective Enterprise Java" is similar in format and quality to "Effective Java". It is written at a higher level as it applies to J2EE systems, rather than the Java language. The 75 items include architecture/design (batch SQL to avoid server round trips) and coding level (serialverUID) tips. They do lean toward the architecture/design level tips as the author refers to "Enterprise Java" for more lower level ones.

The tradeoffs of various techniques are highlighted rather than just relying on best practices. For example, "use object-first persistence", "use relational-first persistence" and "use procedural-first persistence" are all included as tips. Obviously, you wouldn't want to do all of these at once. However, the discussion of when to use each is extremely valuable.

All the trips are grouped by topic. Where appropriate, code snippets are used quite effectively (no pun intended.) Examples and anecdotes prevent the material from getting dry. This book is destined to become a classic. I highly recommend it for any J2EE developer, designer or architect.

Discuss book in the Saloon More info at Amazon.com



Addison-Wesley Professional
1 edition
September 2004
496 pages

Reviewed by Thomas Paul, November 2004
  (10 of 10)


As anyone who has programmed using Servlets, JSPs, and EJBs knows, the complexities of integrating multiple layers of code can drive you to distraction. If you aren't careful, you can create an application that performs poorly under load, is difficult to maintain, and is impossible to port from one platform to another. The tricks that a programmer needs to avoid these problems often come painfully with experience. The author has taken his experience and given us a book that is well-written, easy to understand, and provides excellent advice to help you produce superior applications. The best part is that the advice you get is practical advice from someone who has actually experienced the pain and suffering of J2EE development. This book deals in the reality of development and not pie-in-the-sky theory.

The book contains seventy-five items of discussion covering a wide range of topics from the broad, "Keep it simple" to the specific, "Never cede control outside your component while holding locks." The items cover everything from architecture to coding. Even if a particular item is not of interest to you, there will be plenty of other items that will be of interest.

This book is not a tutorial or beginner's book. It is expected that the reader already has experience with J2EE. If that describes you, get this book to avoid more pain and suffering. You will end up a better developer and your applications will be cleaner and easier to maintain.

Discuss book in the Saloon More info at Amazon.com




Java Reflection in Action
by Ira R. Forman, Nate Forman


Manning Publications
1 edition
October 2004
300 pages

Reviewed by Thomas Paul, December 2004
  (10 of 10)


There are only a handful of books that every Java programmer should own. This book manages to enter into that elite group of books by providing exceptional coverage of an area of Java programming that is generally poorly covered and often misunderstood. Reflection is a topic that many programmers know about but don't truly understand. Reflection can provide simple ways to get out of complex problems, which makes it well worth knowing. Reflection is one of those tools that you never knew you needed until you learn it.

The authors have been working with reflection for years. They attack reflection in small pieces, making each topic crystal clear before moving on. In keeping with the "action" from the title, the authors show examples of each aspect of reflection, breaking down each line of code with complete explanations.

The book starts with the basics of reflection, looking at how to examine a class at runtime and dynamically load it. The book then moves on to demonstrating how to use the Proxy class. Later chapters show how to examine the call stack, customize class loaders, and transform one class into another. Performance is covered with a chapter that gives some good examples of benchmarking the cost of using reflection. The book ends with a look at the impact of Java 1.5 on reflection.

The best advice I can give is, buy this book. You will be amazed at the things that you didn't know you could do with Java.

Discuss book in the Saloon More info at Amazon.com




Core Java 2, Fundamentals
by Cay Horstmann, Gary Cornell


Prentice Hall PTR
7th edition
August 2004
784 pages

Reviewed by Thomas Paul, December 2004
  (7 of 10)


This is the seventh edition of this book and in some ways it hasn't changed much since the first edition. The first edition was aimed at C++ programmers who were looking to transition to the new language. The seventh edition is still fast-paced and detailed and aimed for the experienced programmer. The authors assume that you already know the basics of programming even if it isn't with an object oriented language. The book might make a fairly good college textbook but not as a first language.

The book covers the main areas that you would expect in an introductory Java book with a few surprises. The book gives a little bit of the history of Java and shows how to install and run Java from the console and Eclipse (but not NetBeans). There is an early introduction to reflection but exception handling isn't covered until well into the book. Swing is covered in a fair level of depth. J2SE 5.0 changes are covered throughout the book with the many examples written to show off the new additions to the language. Threading and Collections are not covered.

Overall this is a well written book who is the target audience? How many C++ programmers can be left that don't already know Java? For an introductory tutorial this book may be a bit too advanced. Through seven editions, Core Java has changed little other than to reflect language changes. Perhaps it's time to rethink the franchise.

Discuss book in the Saloon More info at Amazon.com




Desktop Java Live
by Scott Delap


LL
1 edition
2005
pages

Reviewed by Gregg Bolinger, August 2005
  (10 of 10)


Desktop Java Live by Scott Delap isn't your typical "how-to java book full of API references and JButtons. DJL is a pioneering book that teaches you how to write desktop applications using best practices and how to use a plethora of open source libraries to enhance and ease the development of applications.

Chapter One introduces you to desktop applications all over again. Scott talks about the shift from rich desktop apps to browser based applications over the past several years and how to determine if your application is right for the desktop.

Chapter 5 introduces you to the Event Dispatching Thread and discusses common threading pitfalls in Swing applications. Scott then shows you several different freely available API's that have been made available to help Swing developers deal with threads more effectively. You can search the web for weeks and not find the culmination of useful information available in this single chapter of Scott's book

Coming up are chapters on Java WebStart, Installers, Obfuscators, and Testing. Scott writes in a way that that is easy to follow and understand but does not water down the topics. Scott knows what he is talking about and that shows throughout the book. If you've never written a Swing application this book won't explain how to do that. But if you are even remotely familiar with how to develop Swing applications this book will help your next application be the best it can be.

Discuss book in the Saloon More info at Amazon.com




Wicked Cool Java
by Brian D. Eubanks


No Starch Press
1 edition
November 2005
248 pages

Reviewed by Katrina Owen, October 2007
  (6 of 10)


Wicked Cool Java reads like a blog. I'd probably visit the blog regularly. Some days I'd skim, some days I'd read through thoroughly, and occasionally I'd bookmark for future reference. I'd probably go to the blog and do searches now and then when attempting to approach new (to me) problems, and I'd browse the archives some days while procrastinating.

Topics covered range from generics and String manipulation to MIDI and harmonics, from graphs and graphics to scientific applications, from semantics to logic, artificial intelligence and neural networks to programming lego robots.

I'm sure every single bit covered is Wicked Cool to someone... though it is difficult to imagine any one person finding ALL of it to be Wicked Cool. Except maybe the author, who expresses an admirable amount of enthusiasm and interest!

The target audience is people who have a good basic familiarity with Java, and are ready to see what wonders will pop out if you poke it in unexpected places.

If you are very new to programming, a lot of the discussions might be difficult to follow.

Discuss book in the Saloon More info at Amazon.com



No Starch Press
1 edition
November 2005
248 pages

Reviewed by Jason Menard, March 2006
  (6 of 10)


"Wicked Cool Java", by Brian D. Eubanks, bills itself as "an idea sourcebook" for Java developers who are "looking for interesting and useful APIs or for project ideas." This book serves as an introduction to a hodge-podge of APIs covering a breadth of topics. Eubanks devotes sections of the book to such overarching topics as processing XML and HTML, the semantic web, scientific and mathematical applications, graphics and data visualization, and multimedia among others.

I do have a couple of problems with the book. The first two chapters are "Java Language and the Core API" and "String Utilities." Given the stated objectives of the book, I have a hard time seeing where the first two chapters fit in. My other gripe is that URLs aren't given for most of the APIs under discussion. Instead the author expects us to visit the book's website for this information. While this isn't a big problem, it certainly is annoying.

Complaints aside, I did enjoy reading about many of the APIs that I was unfamiliar with. The text does inspire me to want to try out some of the material presented therein, which is after all what Eubanks was trying to accomplish. So while I might not call it "Wicked Cool", "Kinda Cool" might be a bit more appropriate.

Discuss book in the Saloon More info at Amazon.com



No Starch Press
1 edition
November 2005
248 pages

Reviewed by Mark Spritzler, January 2006
  (7 of 10)


So what should I make of Wicked Cool Java. This Book has a bunch of "Code Bits, Open-Source Libraries, and Project Ideas", and it does. However, some of the bits and libraries might not be of interest to me or you at this moment, and just cool to look at, but misses on the wicked side.

There are core Java stuff, String stuff, parsing stuff, Math neuro net stuff, RSS feeds, and more. So, there isn't any one thing that is covered completely throughout the book. This is where I think this book misses. Because you might use an example and not use another till years later, or never.

I'd rather do a Google search. These items could be split into articles and posted on one web site.

Discuss book in the Saloon More info at Amazon.com




Design Patterns in Java
by William C Wake


Addison-Wesley Professional
second edition
April 2006
480 pages

Reviewed by Frank Carver, May 2006
  (9 of 10)


It's hard to review this book without mentioning "Design Patterns" by Gamma, Helm, Johnson and Vlissides (known as "Gang of Four", or "GoF"). Both start with a general intrduction, describe the same 23 patterns, and even have an index of patterns inside the front cover..

That said, it's the differences which matter. .

GoF chose mainly UML and C++ to describe the patterns in detail. This book considers how these patterns can be used in Java. That in itself is significant (at least if you use Java), but there is also a strong difference in style between the two books..

GoF is dry and academic, sometimes requiring a lot of study to understand and apply abstract pattern descriptions. This book, on the other hand, is much more lively - full of worked examples, self-test problems and puzzles, all set in the context of a fictional firework manufacturer. This makes it a much more enjoyable read. And if you get stuck, the solutions are all in the back..

However, this easy-reading, approach has a negative side. The patterns are so comfortable and copyable that subtlety can be missed. Take Flyweight, for example. Admittedly this is one of the rarer patterns in the wild, but in this book it seemed more like a recipe for one particular usage than an exploration of possibilities..

In summary, GoF is a crusty classic worthy of anyone's bookshelf, but this book provides a useful and practical introductory step for anyone working with Java.

Discuss book in the Saloon More info at Amazon.com




Java Concurrency in Practice
by Brian Goetz, Tim Peierls, Joseph Bowbeer, David Holmes, Joshua Bloch, Doug Lea


Addison-Wesley Professional
1 edition
May 2006
384 pages

Reviewed by Ulf Dittmer, July 2007
  (8 of 10)


Java has had multi-threading capabilities from the beginning, but with the arrival of multi-core and multi-processor CPUs on desktops everywhere, and the broad range of new concurrency features in Java 5, there are no excuses any more not to take advantage of multithreading. Getting it right can be tricky, though, and that's where this book comes in.

It explains not just the features of the Java virtual machine and the class libraries that help implement concurrent applications, but also serves as an introduction to the problems arising in multi-threaded code in general. That can range from the small -how to share a class variable between threads - to the large - how to structure applications to take advantage of concurrency. More specialized chapters deal with threading in GUIs (important for Swing developers), how to maximize performance while retaining thread safety, and how to test concurrent code.

All concepts are explained with plenty of code examples that show what is and what isn't thread-safe. If several ways to solve a concurrency problem exist, their functional and performance differences are investigated, and -where possible- quantified. Engineering consists of tradeoffs everywhere, and this book makes clear how those between functionality, performance and thread safety can usefully be made.

Everyone not having had the benefit of CS 401 "Issues in Concurrency" will get a lot out of this book. And those who did will learn how to properly implement concurrent applications in Java.

Discuss book in the Saloon More info at Amazon.com



Addison-Wesley Professional
1 edition
May 2006
384 pages

Reviewed by Lasse Koskela, June 2006
  (9 of 10)


I've been doing most of my recent consulting in technology companies building systems that deal with concurrency, which is part of the reason why this book ended up on my desk -- I wanted to upgrade my know-how on the new concurrency features in Java 5 and a brand new book from recognized authors in the field sounded like a great source of information beyond the javadocs. And it is.

I'd almost call this the current bible on Java concurrency. At less than 400 pages it's relatively compact and still manages to properly cover a lot of ground. The text is easy to understand and avoids "difficult" words better than Doug Lea's "Concurrent Programming in Java", although it's been a couple of years since I read Lea's earlier book.

What I really like about the book is the thorough discussion on not just the API but also on the underlying theory. In other words, you're not just reading about the new synchronizer objects, thread factories or the executor architecture -- you're also getting the low-down on a lot of what's happening inside the JVM.

This, on the other hand, also makes the book somewhat less approachable as it might be if the authors would just give you the "tutorial". I did have hard time figuring out some sections on the first time around but I can't say it was because of the authors' writing. In any case, definitely not a course book for Java Programming 101.

It was a positive surprise to see the authors dedicating a chapter for testing multithreaded code. I would've wanted to read more on the topic, but the material in this one chapter is already a huge help in helping the reader to understand some important differences between unit testing the logic and the concurrent behavior of Java code.

I'm giving a big thumbs-up for "Java Concurrency in Practice". Besides the couple of pages in my copy having print quality problems (the copy we have at the office doesn't, so it's probably a one-off case), I don't have much negative things to say about this book. If you're looking for an advanced title on concurrency programming in Java, you won't go wrong with this one.

Discuss book in the Saloon More info at Amazon.com



Addison-Wesley Professional
1 edition
May 2006
384 pages

Reviewed by Janeice DelVecchio, October 2010
  (8 of 10)


Wow. So many examples! I love books that really SHOW me what's going on.

This was my first *real* in depth look at threads. When I first got this book, I said, "wow, kindof a smallish book for a big deal subject...." I assure you: there's a ton of material packed into this book. I can bet that everyone could benefit from the concentrated knowledge in this text.

I mainly got through the first section of the book, the fundamentals. There's talk about easy-ish stuff like definitions and use of volatile and synchronized keywords, and a way more in depth description of what happens in the JVM and why. I will be reading this whole section over again because it's a whole lot to wrap my head around.

I really enjoyed picking at the code examples and using the snippets to work through what was going on. This was really helpful in helping me understand the concepts.

The only (minor) downfall is the book goes like a steamtrain through the material. Because of this, I wouldn't recommend this book to anyone without a very good understanding of core Java, and at least some foundational knowledge of threads and threadsafety.

The other sections of the book look at design, performance, testing, and advanced topics. This is a book that will remain in my collection and be used time and time again.

Discuss book in the Saloon More info at Amazon.com




From Java to Ruby
by Bruce Tate


Pragmatic Bookshelf
1 edition
June 2006
160 pages

Reviewed by Marc Peabody, August 2006
  (10 of 10)


I've been skeptical yet curious about Ruby. There are so many darn Java frameworks out there and I needed some justification to learn Ruby instead of yet another Java framework. Hey, I kinda have a life and I value my time.

This book doesn't teach Ruby programming but it might convince you to learn it. The cover reads, "Things Every Manager Should Know" yet you don't have to be a manager to appreciate Bruce's insights. Expect no syntax - this is a higher level blueprint for the revolution.

Bruce Tate reviews, without quibble, the dark sides of Java and what can cause the language itself to be the bottleneck of your team's velocity. You then discover what types of projects and work environments best cater to a Ruby pilot project. Bruce fairly weighs the risks and benefits for a variety of scenarios and even delves into how to put together an awesome Ruby team.

From Java to Ruby was so enjoyable a read, I finished it in two days. Pick up a copy but be warned: expect your colleagues to ask, "Hey, can I read that when you're done?"

And no, I won't let you borrow mine.

Discuss book in the Saloon More info at Amazon.com




Java 6 Platform Revealed
by John Zukowski


Apress
1 edition
July 2006
240 pages

Reviewed by Henry Wong, October 2006
  (9 of 10)


A few interesting points about this book.

This book assumes knowledge of Java up to Java 5. In fact, it assumes deep knowledge of Java. You will be treated as an experienced developer that needs to get up to speed with Java 6.

This book covers enough to get you started. You will understand what changes were made, and how to use the new or changed features (with code snippets). Anything more complex requires a bit of research into the Java documentation -- of which you will be provided the JSR to obtain the information.

This book is short. At slightly above 200 pages, it can be read in a single sitting.

These points may give an impression that this is not a useful book. This is not the case. In fact, I was very impressed with it. The purpose of this book is to get the reader up to speed on Java SE 6, and as quickly as possible. In this regard, it does the job very well.

The chapters discusses the core classes, I/O classes, AWT/Swing, JDBC, XML support, Web Services support, along with some interesting enhancements, such as the Compiler API, Scripting API, and new Annotations. The chapters are also written in a fashion that can be read independently -- so if you are only interested in databases, you can jump right to the JDBC chapter.

I highly recommend this book for any experienced developer considering a move to Java 6. Beginners should look elsewhere.

Discuss book in the Saloon More info at Amazon.com




Pro Ajax and Java Frameworks
by Nathaniel T. Schutta, Ryan Asleson


Apress
1 edition
July 2006
336 pages

Reviewed by Balaji Loganathan, October 2006
  (8 of 10)


The authors have taken good efforts to neatly introduce, analyses and compare various javascript tools specifically meant for AJAX.

The flow of the book is well managed and its very reader friendly.

This book is definitely a one stop reference for knowing what development tools, editors, libraries available for supporting AJAX in Java web applications.

Comes with 50MB examples source code. The source code has been configured to easily deploy and test using ANT.

This book mostly addresses the freely available AJAX tools.

Few drawbacks I found:
A lot of pages have been spent on describing and comparing between java frameworks, the authors could have avoided it since this book about using AJAX in java framework.
The code listings in the chapters (like html, javascript, jsp) were not well formatted, so it very difficult to read.
The authors gives more preference to JSF framework which is again not the context of the book.
That's it.

Since the book is published recently(July06), this book covers many latest AJAX and JAVA Framework products, so its saves your time on finding a right tool for your AJAX based websites.

I don't want to write again the table of contents of this book but want to mention that you will sure learn all the bit and pieces that you need have for setting up a AJAX based java web applications.

Discuss book in the Saloon More info at Amazon.com




Rails for Java Developers
by Stuart Halloway, Justin Gehtland


Pragmatic Bookshelf
1 edition
February 2007
304 pages

Reviewed by Jason Menard, May 2007
  (8 of 10)


In "Rails for Java Developers", Stuart Halloway and Justin Gehtland provide an introduction to Ruby and the Rails web application framework aimed at the Java developer more familiar with frameworks such as Struts and Hibernate. There's a lot of buzz in the Java community surrounding Ruby and Ruby on Rails so this title is quite timely.

Halloway and Gehtland provide a tutorial to learning Ruby and Rails by examining similarities with Java. The tutorial progresses by providing examples in both Ruby and Java using popular Java frameworks. The introduction of Ruby and Rails concepts by juxtaposing them with similar concepts implemented in Java is comforting for the developer who may feel a little intimidated by the differences between the languages. Working through the book, the Java developer will learn the basics about creating and deploying Ruby on Rails applications, picking up an exciting new language along the way.

The first three chapters introduce the Ruby programming language. This is the best Java-centric Ruby introduction that I've seen and it's something I wish I had available to me when I was first learning the language. The rest of the material covers the basics of Rails applications as well as web services and security issues. I found the chapters on testing and automating the development process to be particularly good.

The approach this book takes may not be suitable for everyone. After a certain point, I found that the constant juxtaposition of the Java way of accomplishing a task with the Ruby on Rails way of accomplishing a task wore a bit thin. I found myself just trying to skip past the Java bits to get on with the Ruby. Still, I found the book to be quite good overall. If you are an experienced Java developer seeking a gentle introduction to Ruby on Rails, you can't do better than "Rails for Java Developers".

Discuss book in the Saloon More info at Amazon.com




Java for Programmers (Deitel Developer)
by Paul J. Deitel, Harvey M. Deitel, Paul J. Deitel, Harvey M. Deitel


Prentice Hall PTR
1 edition
February 2009
1200 pages

Reviewed by Campbell Ritchie, March 2009
  (8 of 10)


This book follows the winning formula which all Deitel books use; some people (myself included) like the Deitel style and others don't. Nil desperandum: you can probably find sample chapters at www.Deitel.com. Like all Deitel books, it is large and provides lots of pages for your $!

I enjoyed reading it. The book follows the same pattern as its "How to Program" stable-mate, but lacks some of the beginner's material, so it is quicker to read. Unfortunately the exercises at the ends of chapters, and some of the larger code examples (e.g. the messenger) have gone too.

It is very clear to read, covering all the basics, and introductions to Swing, regular expressions, generics, and threading. Threading can only be handled briefly in a general book and those wanting more detail should look for Brian Goetz's book. Similarly a full handling of websites or databases would require another book.

Exception handling is well covered, but I would have preferred to see more about preconditions and postconditions, and how to maintain a class invariate.

The book has been updated to Java 6 and includes SwingWorker and the Desktop interface. There are also chapters about interfacing with networks, databases (MySQL rather than Derby) Ajax, Java server Faces and Web services.

Those who like a traditional pedagogic introduction to a wide range of Java work, and who like the style, will find this book a great asset; raw beginners might prefer the "How To" book.

Discuss book in the Saloon More info at Amazon.com



Prentice Hall PTR
second edition
April 2011
1168 pages

Reviewed by Wouter Oet, July 2011
  (4 of 10)



Java for Programmers claims to be a book for the professional programmer. I find this odd since the first 300 pages (out of 1168) are about how to program in Java. If the target group is professionals then remove that bit or if it also includes people that are new to Java or programming in general then 300 pages isn't nearly enough.

The book covers the following topics: Java APIs, Object-Oriented Programming, Database, SQL, JDBC, JavaDB/Apache Derby/MySQL, Networking, JavaServer Faces 2.0, AJAX-Enabled Web Application, Web Services, Generics, Collections, Files, Exception Handling, Multithreading, Swing Graphical User Interfaces, Graphics/Java 2D, Multimedia, OOD/UML ATM Case Study, Debugger and an online introduction to Android App Development. When I saw this list I was quite surprised. For almost each of these topics you can pick up a book of the same size. I was skeptic about how they managed to fit all that information in there.

The main reason I decided to review this book was that it also claimed to cover Java SE 7.Unfortunately these claims have not been totally fulfilled. There is nothing about NIO 2.0 (file-handling), the fork-join framework and binary integral literals and underscores in numeric literals.

The book feels like a big collection of enhanced tutorials. The chapters allow you to write an example program but if you deviate only slightly you'll need to look up materials only as it isn't in the book. The authors decided to use Netbeans as tool to generate code and directory structures. I don't use Netbeans so that was quite annoying. Using Maven it would have been possible to generate code and support for your favorite IDE.

Some of the code examples in this book are just wrong. Improper closing of resources, excessive usage of System.out.printf(), usage of System.exit(1) in exception blocks and no seperation between Model, View & Controller for example.

This book tries to cover to much and therefore fails to properly cover the topics. The quality of the chapters isn't great. If you want to know little about a lot of topics then this is a great book, otherwise google for an tutorial about your topic of choice or pick up a book specific for that topic.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com




Java Generics and Collections
by Maurice Naftalin, Philip Wadler


O'Reilly Media
1 edition
October 2006
288 pages

Reviewed by Jeanne Boyarsky, May 2011
  (6 of 10)



My first thought on seeing the title "Java Generics and Collections" was wondering how there could be a whole book's worth of material on the topic. There is!

The first half of the book addresses generics. It includes concepts like reification (I learned a new word) that helps you better understand how generics actually work. It also includes a number of idioms for dealing with generics that you might not know even if you use generics.

The rest of the book covers the Collection API including how each one works and when to each type. This felt somewhat drawn out and repetitive. I would have liked to see the new classes in Java 5 and 6 highlighted more.

The downside: Some of the code examples were on the long side and some of the text required a lot of concentration. I also noticed a typo in the name of a Java class in a diagram which feels worse than in text. I also feel too broad an audience is covered. Parts assume you know nothing (in which case you'd be in over your head.)

Overall I recommend the book to learn about generics on a level of detail that surpasses the tutorials.

Discuss book in the Saloon More info at Amazon.com




Java the Complete Reference
by Herbert Schildt


Oracle Press/McGraw Hill
8 edition
2011
1116 pages

Reviewed by Campbell Ritchie, October 2011
  (7 of 10)



Always open the Amazon links for these reviews: examine the contents and a few sample pages. We have a lot of pages; 1100 for $60.00 is good value for money. I suspect the binding may not last many years; maybe I'll need a new copy soon!
The "tutorial" in "Part I" moves (I think) too quickly for beginners, so I'll review it as "Advanced". I think it is intended for experienced programmers who already understand object-orientation. It covers all the basics, and is easy to read. It includes the first explanation of Object#wait() and Object#notify() which I really understood! The "tutorial" covers syntax before object-orientation, and encapsulation only appears after classes are described.
"Part II" goes through the packages, describing their classes and interfaces. Maybe a list of classes could have been replaced by a link to the appropriate page of the API, and the text might not have gone so "fast"? The collections framework section describes all the classes, including legacy code, but doesn't analyse the Set interface with those nice methods which implement set union and intersection. Most classes are demonstrated with short examples. In some cases the examples are obviously abbreviated to save space. The coverage is comprehensive and up-to-date for Java7.
"Part III" shows examples of use of Swing, Beans, and Servlets, and "Part IV" some larger example applications.
I found only two things I took exception to: the %n tag "inserts a newline character", and java.util.Scanner.nextLine() "returns the next line of input as a String."
I would have preferred full-blown object orientation, encapsulation, etc., from the start.
But this is a book I shall be pleased to have on the shelf, which I shall make sure to read lots from.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com



Oracle Press/McGraw Hill
8 edition
2011
1116 pages

Reviewed by Rob Spoor, November 2011
  (6 of 10)



This book doesn't seem to know what it wants to be. It claims to be a reference but fails at that point. Its definition of reference seems to be listing a lot of methods with little explanation. If I want that I can use the Javadoc pages for free. Even worse, it chooses to describe obsolete classes like StringTokenizer, Stack or Dictionary, but only briefly mentions more interesting features like cookie handling and the concurrent collections. It does list the latter, but doesn't tell me which one I would need in which situation. The book also gives too much attention to applets (in combination with AWT, not Swing), while ignoring more interesting packages like java.util.logging and java.util.zip almost completely. It tries to describe servlets (in just over 20 pages, definitely not enough), but fails to even mention JDBC. It would have been better to either add a few hundred pages, or drop some topics altogether.

The book appears to try to be a book for beginners as well. While it does explain the basics, it rushes through them at times. I don't think beginners will like that. I think that Head First Java or even Oracle's own tutorials are better choices to learn the language. What's left is several chapters that experienced programmers already know.

Now this isn't a bad book. It does handle several of the new Java 7 features like the Fork/Join Framework, NIO2 and try-with-resources, and some topics like Formatter rightfully have longer sections. I also really liked the chapter on images. However, it doesn't add much that you can't find in Oracle's own tutorials and online Javadoc pages.

I'd like to add one thing that really surprised me. While the book is updated for JDK 7, the author doesn't appear to know that the wrapper classes (Integer, Long, etc) have valueOf methods to wrap primitives. I can't remember him using them even once, choosing to use a constructor each time instead.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com




Murach's Java Programming
by Joel Murach


Mike Murach & Associates
fourth edition
November 2011
836 pages

Reviewed by Campbell Ritchie, January 2012
  (8 of 10)



Whenever reviewing a book, consider which audience and purpose it's intended for. This book is obviously for experienced people (Murach produce a "Beginning" book, too) who wish to migrate to Java? programming from another language, and so as to speed up coding teaches both Java? and NetBeans. It fortunately makes no claim to be comprehensive; it clearly focuses on certain classes (see page 366), expecting readers to find other topics for themselves.
The book follows the paired pages format often used by Murach, wherever the length of the code fragments permits. It starts with basic syntax, then object-orientation, specialised classes, GUIs, data access, threading and deployment with jar files. Collections and exceptions are included amongst those "specialised classes". I was especially pleased to see that data validation, using error messages was introduced early in the book, and that the exceptions section teaches how to throw Exceptions for incorrect input, as well as how to catch them.
The GUIs are created with the NetBeans GUI builder; this allows one to set up the display very quickly without necessarily knowing all the code. It also shows real object-oriented event handling.
This book moves very fast and would be particularly on to a course, where an instructor can supply more explanations. I would have preferred to see "for further reading" and references to basic principles e.g. Object-orientation.
I found a few errors, eg precedence of ! (p117) Character and Hashtable misspelt (p401, 396).
A good book I'm pleased I've read.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com



Mike Murach & Associates
fourth edition
November 2011
836 pages

Reviewed by Christophe Verre, January 2012
  (7 of 10)



Murach's Java programming is a classic Murach book aimed at Java enthusiasts. Following Murach's paired-paged style, with the left page for explanations and the right page for syntax, guidelines and examples, the book drives the reader into the Java world. It even goes a bit beyond the language syntax, by providing chapters on JDBC using the Derby database, and a chapter about XML handling. Each chapter ends with practical hands-on exercises. The IDE used throughout the book is Netbeans. The book is fast paced, maybe because explanations are kept to a minimum, so whether or not beginners are the target audience is debatable. Object-oriented programming needs time to assimilate so some people might find chapters on that subject lacking depth. The book is enjoyable, but I'd recommend it to people with an object-oriented background rather that to complete beginners.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com




Java Performance LiveLessons
by Charlie Hunt


Addison-Wesley Professional
edition

pages

Reviewed by Vijitha Kumara, January 2014
  (9 of 10)



This particular course contains four video lessons as outlined briefly below.

First lesson starts with a JVM overview which introduces major components of the HotSpot VM and explains the Java runtime environment. It also introduces different server/client variations of the JVM with details of the JVM heap structure.

Second lesson is focused on collecting performance statistics with different JVM and OS metrics including CPU time, CPU run queue, Memory, Network utilization.

Third lesson discusses how to understand HotSpot VM GC logs. It particularly talks about various GC strategies used in JVMs namely Parallel, CMS and G1 with details on available logging fields.

Fourth lesson is focused on how to tune a HotSpot VM step-by-step with a defined example process.
I found it very interesting as it discusses different kind of issues taking the GC logs in to consideration. It explains how different issues can be avoided and to get application performance improved along the lines of the key measurements; Throughput, Latency and Memory footprint.

All lessons look at multiple operating systems (Windows/Linux/Solaris) with OS specifics for a given objective. Throughout the lessons Visual VM and some OS specific tools are used for monitoring and data capturing.

This series is more of a data driven set of guides where mostly the user is presented with captured data in the form of JVM logs etc... for a given topic and walk them through the related issues while the strategies to overcome those issues being discussed. I recommend this for experienced Java developers looking to troubleshoot performance issues and improve application performance.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com




Making Java Groovy
by Ken Kousen


Manning Publications
1 edition
September 2013
368 pages

Reviewed by Jeanne Boyarsky, July 2014
  (8 of 10)



I didn't write a review of "Making Java Groovy" the first time I read it because I didn't know what to make of it. Reading it again now, I know what the problem was. I didn't know enough Groovy to appreciate the examples. Appendix B does cover the Groovy language constructs methodically, but I didn't believe the text that suggest going to an appendix so early on in the book.

Since that initial read, I started using Groovy. Well kind of. I started writing Java code that I called Groovy. Then I slowly started writing more and more Groovy style code. Now I'm at the point where the examples make sense to me. I think the ideal point was to either re-read the book earlier or to actually read appendix B. Because now I know a lot of things in the book. Which I learned the hard way despite owning a perfectly good book on the topic. I did learn some new things though. And at least I was a Java developer; the book's target audience.

Anyway on to the book. Part covers how to write good Groovy code. Part focuses on common tasks like accessing xml. After each example is a "lessons learned" section to make sure you got the essential lessons. The author captures the Groovy tips appropriately including advice on using or not using dev and "parenthesis are optional until they aren't."

The later part of the book covers integrating with other tools. I was entertained when the author said Maven has "an opinionated API". I was disappointed that he didn't show you can put Groovy code inside a Maven POM.

I do recommend this book. Just remember to read Appendix B when you are told to!

Discuss book in the Saloon More info at Amazon.com




Java Enterprise Design Patterns: Patterns in Java Volume 3
by Mark Grand


Wiley
unknown edition
February 2001
416 pages

Reviewed by David Vick, April 2002
  (9 of 10)


This is an very well-written book on Enterprise design patterns. Mark Grand presents his topics very clearly and describes each pattern he discusses in detail. The book starts with a thorough tutorial on UML that provides many different examples of the various diagrams and elements, and how they are used together. This part of the book is a good foundation for the balance of the book, which uses UML diagrams in each pattern description.

The book is logically divided into different sections based on the common uses of the patterns described. Then each pattern description is broken down into various parts. Mark does an excellent job of focusing in on the various things that affect the pattern in use. He also uses real world examples to describe usage instead of the usual contrived ones found in many books.

This is a book that you will read once then use each time you are implementing a pattern to see what you've missed. From an educational point of view, the book is very good and will teach you a lot about the patterns in it. From a development standpoint it may be even more valuable in that it can be used as a reference to get alternative ideas or to see what consideration you may have missed in your implementations. I highly recommend this book to anyone doing enterprise work now or in the future. Now I have to go out and get the first two volumes!!!

Discuss book in the Saloon More info at Amazon.com




Java Number Cruncher: The Java Programmer's Guide to Numerical Computing
by Ronald Mak


Prentice Hall PTR
1 edition
November 2002
480 pages

Reviewed by Jason Menard, May 2003
  (9 of 10)


At one time or another, most of us will likely have to write code performing some amount of numerical computation beyond simple integer arithmetic. As many of us are neither mathematicians nor intimately familiar with the bit gymnastics our machines must perform in order to manipulate numbers, we can get ourselves into trouble if we're not careful. Luckily, "Java Number Cruncher" comes to the rescue.

This book is an introduction to numerical computing using Java providing "non-theoretical explanations of practical numerical algorithms." While this sounds like heady stuff, freshman level calculus should be sufficient to get the most out of this text.

The first three chapters are amazingly useful, and worth the price of admission alone. Mak does a fine job explaining in simple terms the pitfalls of even routine integer and floating-point calculations, and how to mitigate these problems. Along the way the reader learns the details of how Java represents numbers and why good math goes bad. The remainder of the book covers iterative computations, matrix operations, and several "fun" topics, including fractals and random number generation.

The author conveys his excitement for the subject in an easy-to-read, easy-to-understand manner. Examples in Java clearly demonstrate the topics covered. Some may not like that the complete source is in-line with the text, but this is subjective. Overall, I found this book educational, interesting, and quite enjoyable to read.

Discuss book in the Saloon More info at Amazon.com




Enterprise Java Development on a Budget: Leveraging Java Open Source Technologies
by Brian Sam-Bodden, Christopher M. Judd


Apress
1 edition
November 2003
656 pages

Reviewed by Andrew Monkhouse, November 2004
  (7 of 10)


I found this to be a very well written book, with the authors clearly having very good knowledge of the tools they presented.

While I expected the book to cover a few of the better know Java Open Source technologies, I was pleasantly surprised to find that also included were many of the "glue" tools which are practically a requirement to get a complete solution working. For example, any book with this scope is going to mention Ant and JBoss, but the authors took it several steps further, and included information on other tools to help you manage JBoss, and tools to help you generate your code (XDoclet and MiddleGen).

On the downside, there were several occasions where the book could have mentioned alternative open source products (e.g. other EJB containers than just JBoss) - this was not consistent as in some cases multiple products were described. I also feel that the book would have benefited from some suggestions on how different tools could be compared. The other concept I didn't like was the huge example application they presented - it is essential to download the source code, as there is no way such a large example application could be described in the book.

I would recommend this book to anyone considering using Java within their enterprise that would like to learn about some of the open source options available.

Discuss book in the Saloon More info at Amazon.com




The Java EE 6 Tutorial: Basic Concepts (4th Edition) (Java Series)
by Eric Jendrock, Ian Evans, Devika Gollapudi, Kim Haase, Chinmayee Srivathsa


Prentice Hall
fourth edition
September 2010
600 pages

Reviewed by Jeanne Boyarsky, October 2010
  (6 of 10)


"The Java EE 6 Tutorial Basic Concepts" is the official tutorial covering all the Java EE technologies. I can't believe it has been 4 years since I read the Java EE 5 version. Last time I remarked 1300 pages was too heavy. Version 6 is split into two volumes which is nice because you can carry it around. The basic concepts one covers web/ejb/jpa/web services.

"As part of Sun's 'The Java Series' this book has the same content as you can find online. Why buy a book you can get for free? Convenience!! You can take it anywhere and read it anytime." - Dave Vick - JavaRanch Review of the J2EE 1.4 version. This benefit is back.

Other dislikes:
confusion between Oracle/Sun.. For example "Oracle web site" docs.sun.com". I'd like to see mention of a transition.
wasn't clear what was new in Java EE 6.
as in past editions, it reads better online than printed.
extensive forward references and lots of repetition. For example, they repeat the six steps to open a NetBeans project 12 times!
many examples didn't explain how/why to do something - like whether to call a web service directly from a JSP.

I did like the walk-through of certain technologies. And the good quality cover paper that doesn't get damaged even if you spill juice on it!

There were good diagrams and charts and good case studies along with several excellent chapters. While I like this version better than #5, I would say to read the pieces you are interested in online and spend your money on a different book.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com




The Well-Grounded Java Developer: Vital techniques of Java 7 and polyglot programming
by Benjamin J Evans, Martijn Verburg


Manning Publications
edition
July 2012
496 pages

Reviewed by Jeanne Boyarsky, August 2012
  (10 of 10)



Want to be a good Java developer? What do you need to know? Java of course. That part is easy.

But unless you are a brand new Java developer, you probably aren't up to speed on the latest Java 7 features, the threading model and how bytecode works. Or maybe you haven't caught up with the new JVM languages (Clojure, Scala and Jython.) The book also covers dependency injection, TDD and the like.

With lots of code examples, and clear explanations/writing style, I really enjoyed reading the book - and learned a lot. And as technical proofer, I can tell you the quality of the book is good and the examples work! I'm looking forward to scribbling notes in a printed copy. And I know it isn't going to be a book that stays on my bookshelf in the office - too many people will want to borrow it. And I'm sure some of them will actually buy their own copy.

Disclosure: I will be receiving a copy of this book from the publisher in exchange for being the technical proofreader for the book.

Discuss book in the Saloon More info at Amazon.com




AXIS: Next Generation Java SOAP
by Romin Irani, S. Jeelani Basha


Peer Information
1 edition
May 2002
250 pages

Reviewed by John Wetherbie, August 2002
  (8 of 10)


If you want to jump in and start learning about and creating web services this is a good book to have. As the title indicates, this book introduces you to the Apache eXtensible Interaction System (AXIS). AXIS is an implementation of the Simple Object Access Protocol (SOAP).

The book walks you through an introduction to SOAP and related standards and how to install AXIS on your system. From there you deploy a simple web service and walk through the elements of AXIS in more detail. A discussion of Handlers and Chains, which allow you to add your custom functionality to AXIS, has its own chapter. The book finishes up with a case study that pulls all the topics covered together in one application.

The book contains a great deal of example code and diagrams to explain what is going on. The fact that it does this in less than 300 pages is the best point about the book. This book is definitely meant to get you going with AXIS. The one complaint I have is that the book does not have an index.

Discuss book in the Saloon More info at Amazon.com




Java Design: Objects, UML, and Process
by Kirk Knoernschild


Pearson Education
1 edition
December 2001
257 pages

Reviewed by Junilu Lacar, May 2002
  (4 of 10)


At first glance, this book looks promising. It has all the right stuff listed in the table of contents: general principles of object-oriented design, patterns, refactoring, incremental development, UML, RUP, and even XP. Don't be fooled though because the actual discussion is introductory at best with an almost incidental treatment of Java and how it ties in with the UML, modeling, designing, and creating what the author likes to call a "resilient architecture."

While the book discusses a lot of things that you should know about OO design, UML and iterative development processes, it lacks the focus and depth needed for it to be truly useful. The discussion on UML and design revolves mainly around two use cases and there are very few other examples. Most of the time the author is introducing a new concept and constantly referring to other parts of the book where it will be or has been discussed in detail. However, when I got to the end of the book I was still expecting more detailed discussions and had to go back to see what I missed.

You'll probably get more bang for your buck with Martin Fowler's books on UML and refactoring and Craig Larman's book on UML, patterns and the Unified Process. These books are filled with the examples that "Java Design" sorely lacks. For OO design principles, read the articles by Bob Martin published on http://www.objectmentor.com.

Discuss book in the Saloon More info at Amazon.com




Enterprise Java Beans, 3rd Edition
by Richard Monson-Haefel


O'Reilly
third edition
October 2001
550 pages

Reviewed by Thomas Paul, November 2001
  (9 of 10)


This is the third edition of "Enterprise JavaBeans" in three years, which shows how popular this book is and how fast EJB technology is changing. This new edition has been updated for EJB 2.0 and it gives excellent coverage to the many changes in the new specification. Some of the changes covered include message-driven beans, the new CMP model for entity beans, the EJB Query Language, and how to build complex relationships between entity beans.

The book is written for the advanced Java developer who wants to learn the complexities of Enterprise JavaBeans. This is not a simple tutorial for the beginner. The book starts with a brief introduction to EJB and then spends the next couple of chapters covering the complexities of the EJB architecture. After a brief review of the basics of EJB, the author spends the next three chapters covering the complexities of EJB 2.0 container managed persistence. Bean-Managed persistence and the entity-container contract are then covered followed by a chapter on session beans. The new message-driven beans are given a chapter. The book ends up with a chapter on design considerations for J2EE applications.

The author does an excellent job of including diagrams at just the right places to help clarify difficult topics. Anyone who will be working with EJB 2.0 should own this book. Note: Companion workbooks are available from the O'Reilly website. These include instructions and versions of the sample programs for WebLogic and WebSphere.

Discuss book in the Saloon More info at Amazon.com




Java Developer's Guide to Servlets and JSP
by Bill Brodgen


Sybex
unknown edition
October 2000
411 pages

Reviewed by Cindy Glass, October 2001
  (8 of 10)


There is no question that Bill Brogden has done a fine job of covering the subject matter in this book. He discusses the Servlet and JSP APIs and their uses in depth, as well as giving GREAT example code. It is packed with related topics including XML, JDBC, RMI, JNDI, LDAP, Enterprise JavaBeans etc.

This book is not aimed at beginners, but rather assumes a familiarity with Java and related technologies, and that the reader is just expanding into Servlets and JSPs. In particular it is assumed that the reader is familiar with HTML.

I did have a little problem with the organization of the book. The book starts with how Web Servers handle HTTP requests and discusses how Servlet Engines work. However at no time does he explain WHAT a servlet is, and he just assumes that you know that Servlets are handled with servlet engines. He starts right out using XML in his examples, even though the topic of XML is not introduced until chapter 6. Then, at that point he starts explaining it from step one as though you had never heard of it before. As the book progressed and became more topic by topic oriented this was no longer a problem.

My favorite part is the chapter that Paul Wheaton (of JavaRanch fame) helped write - Applet to Applet communication. OK so I am biased!

If you need to understand Servlets and JSPs in depth, this book will do the trick.

Discuss book in the Saloon More info at Amazon.com




Building Java Enterprise Systems with J2EE
by Paul Perrone, Venkata S.R.K.R. Chaganti


Sams
unknown edition
June 2000
1500 pages

Reviewed by Thomas Paul, July 2001
  (8 of 10)


In a perfect world, on the day you started working with J2EE you would be handed a book that contained everything you needed to know about the subject. This is very close to being that book. This book is for experienced Java developers who are working with Java enterprise technologies. That does not mean servlets and JSPs, although those topics are covered. This book covers much more than just the basics of J2EE. Naming services, directory services, messaging services, transaction services, DCOM, RMI, CORBA, XML are all covered in some depth. You might think that a book covering so much would need to cover each topic only briefly. In this case, you would be wrong. CORBA has more that 150 pages, JDBC has 120 pages, RMI has 100 pages, XML has 60 pages and so on. Other topics which are often skimmed over in other books (security, cryptography, network communications) are given good coverage here. A case study is covered throughout the book showing how each technology could be used in a single application. The end result is a book that is huge with over 1400 pages. However, the book does have some weaknesses. It is light on the most popular topics of servlets and JSPs. It is also light on helping the developer to determine when to use one technology instead of another. If you are looking for a comprehensive guide to J2EE beyond servlets and JSPs, then this book may be the resource you need.

Discuss book in the Saloon More info at Amazon.com




Java Server Pages Application Development
by Scott M. Stirling, Andre Lei, Ben Forta, Edwin Smith, Larry Kim, Roger Kerr, David Aden


Sams
unknown edition
November 2000
500 pages

Reviewed by Tony Alicea, March 2001
  (8 of 10)


One way to start a review of this book is by saying that the contents of the CD-ROM are very interesting.
But more on that later...
The back cover reads "Category: Development" and "User Level: Professional". In this context then, I think this is indeed a very good book. Also, at the time of this writing it is one of the most recent books on JSP 1.1 (there is a misprint right there on the cover of my copy that reads "JSP 1.2" but that's a typo). Sure there's a JSP 1.2 draft but it is not covered in the book.
The book is about 400 pages long (not too short, not to long IMHO) and it is obviously written by experts. I even like the succinct explanations of the Internet and how it is NOT synonym with the World Wide Web (WWW): Not only are they not the same thing, but the Internet is older than the WWW.
Also, Web browsers and Web servers are quickly described while explaining the differences between a Web Server and an Application Server.
But the meat of the book is of course, JSPs. Here the authors sometimes give (in my opinion) more information (and that is good for me) than is required for (for example) HTML programmers that want to learn JSP.
JSP in my view, could be a "super HTML" type of markup language, if you use JSP custom tags all the way. So, I don't see what place the concept of Java Reflection may occupy in a book like this. Also, I think there's no need to get "Under the Hood" as early as on page 20, where a compiled-to-servlet-JSP is presented as it looks after three different JSP engines went through it.
During the time that I was reading this book, one day I got back from lunch and there was an ASP/VB programmer looking at the book. She's not very familiar with Java tech yet, but she had read that Java was supposed to be WORA ("Write Once Run Anywhere").
She then proceeded to ask me "I thought this book was about JSPs. Why does it have Java code called Servlets so early in the book, but more importantly, the code is supposed to be the same but I see three different versions of it? You mean I have to learn a different JSP (or Servlet API for that matter) for every server?"
She was confused that there were three different "sets of instructions" for JRun, Resin and Jakarta. It's OK; I cleared her doubt.
Finally, I don't see why the use and explanation of CSS is needed. Of course it's good programming practice to use CSS but if a reader is not familiar with it beforehand, she may find it more difficult.
Otherwise this is a fine book that programmers with some experience in Java and HTML should seriously consider.
Finally, the CD-ROM has everything you wanted but were afraid to ask, assuming that you're not yet committed to a development environment/application server.
It is the best-loaded CD-ROM that I have seen recently in an a book.

Discuss book in the Saloon More info at Amazon.com




Enterprise Java Programming with IBM Websphere
by Kyle Brown, Gary Craig, Greg Hester, Russell Stinehour, W. David Pitt, Mark Weitzel, Jim Amsden, Peter M. Jakab, Daniel Berg, Kyle Brown, Dr. Cary Craig, Greg Hester, Jaime Niswonger, David Pitt, Russell Stinehour


IBM Press
second edition
December 2003
960 pages

Reviewed by Lasse Koskela, February 2004
  (8 of 10)


Enterprise Java Programming with IBM WebSphere is a solid overview of J2EE technologies and a great tutorial for using IBM's top-notch IDE for developing J2EE applications.

The authors (all 9 of them) go through the whole J2EE architecture from JavaServer Pages to Enterprise JavaBeans to Web Services one element at a time, including "bonuses" here and there, such as testing certain types of J2EE components, the Apache Struts framework, building a presentation layer using XML and XSLT, and mapping objects to data sources.

Each chapter includes a brief introduction to the technology, starting from the basics, and proceeds through the development steps in WSAD using lots of nice screenshots (which are mandatory for such a topic) and plenty of example code. Although some of the plain text is simply describing the wizards and dialogs of WSAD, the why's are always explained.

My biggest glitch with this book was in fact how the code snippets are rendered. Besides the mandatory typos and occasional weird wordings, the code snippets were often badly formatted and double-spaced which made them unnecessarily difficult to read at times.

The book comes with a 3 CD set of software, including trial versions of WebSphere Studio Application Developer, DB2 Personal Edition, WebSphere Application Server, and all of the book's source code. I had some trouble installing the software but that was most probably because I tried to customize the installations quite a bit

Over 800 pages of "let's walk this through together" type of tutorial is an admirable goal and the authors have done a good job making it a pleasant experience. The book has a lot of content and a lot of it is some of the finest text I've read about J2EE best practices. As one could expect, the trade-off is that none of the topics/technologies are really covered in complete detail. All things considered, I'd say this is a great first or second book about J2EE if you're going to use WebSphere Studio. I really can't say whether it should be the first or second, but I know it makes a great companion for a more in-depth technical reference.

Discuss book in the Saloon More info at Amazon.com



IBM Press
1 edition
May 2001
544 pages

Reviewed by Peter den Haan, September 2001
  (7 of 10)


In its 500 pages, this book contains a focused and thorough discussion of enterprise Java development using IBM Websphere and VisualAge. The accompanying CDs contain the timesheet application case study used to develop and illustrate the topics discussed, and evaluation versions of the tools and the DB2 database.

The first few chapters on J2EE architecture are tough going with lots of heavyweight terminology. Fortunately, things clear up as the book moves on to servlets, JSPs, and the case study. The entire second half of the book is dedicated to EJBs. Each of these areas is first introduced at a fairly elementary level, and then covered by a hands-on demonstration of development using WebSphere and VisualAge, working code examples from the case study, and chapters on design considerations and advanced topics.

The way an understanding of the technology, its design issues, and the IBM toolset is developed in parallel is definitely the highlight of the book. It is a refreshing change from volumes that leave you with some understanding of a sprawling pile of technologies but only a vague notion how to apply them. On the flip side, the writing style is fairly dry, JSP 1.1 and tag libraries (supported since v3.5.2) get a perfunctory discussion, and Web services none at all. The authors could also have focused a bit less on EJBs and fleshed out the topic of web-tier-only applications, as these are often more efficient, easier to develop, and perfectly adequate.

Discuss book in the Saloon More info at Amazon.com




Java for the Web with Servlets, JSP, and EJB
by Budi Kurniawan


Sams
unknown edition
April 2002
992 pages

Reviewed by Carl Trusiak, June 2002
  (3 of 10)


This book can be used to learn all the basics of Servlets, JSP's and EJB's. It provides great coverage of all the basics. From that point on it fails! Anyone creating a system using most of the methodologies shown in this book will be disappointed. It constantly demonstrates the things not to do. Especially in respect to DataBase connections. A mention is made on one page of DB Pools and JNDI DataSource then, every example has connections made in a haphazard fashion. JSP TagLibs are introduced and immediately follow by JSP Examples filled with scripting, including making connections to a database. In the DBBean example, the only thing preventing serious concurrency problems with the connection is the fact that the bean is placed in page scope. This causes the connection to be recreated with each page request. When EJB's where introduced, I felt sure the author would use a JNDI DataSource, instead JNDI is used to lookup the Database information (such as the URL) and make individual connections. No attempt is made to demonstrate most of the performance enhancing patterns that can be used with EJB's. Not a book to help learn to Build Scalable Systems!

Discuss book in the Saloon More info at Amazon.com




Instant Messaging In Java - The Jabber Protocols
by


Manning Publications
1 edition
April 2002
300 pages

Reviewed by Sean MacLean, June 2002
  (7 of 10)


Having no previous experience using Jabber for instant messaging, my interest was piqued when I first picked up a copy of Iain Shigeoka's "Instant Messaging In Java - The Jabber Protocols". I have to admit that my interest waned somewhat as I read through to the final chapters. I expect this is due, in part, to the Jabber protocols but this is my general impression having read the book. That said, the authors writing style is effortless, making this, like many of the Manning titles, a lucid and well-paced discussion of the Jabber Protocols. The client/server example is well thought out and develops nicely over the course of the book. If you have any interest in developing a real time messaging system, I'd certainly recommend this title - the only caveat being that, obviously, you accept an implementation using the Jabber protocols.

Discuss book in the Saloon More info at Amazon.com




Java Thread Programming: The Authoritative Solution
by Paul Hyde


Sams
1 edition
August 1999
528 pages

Reviewed by Matthew Phillips, January 2002
  (8 of 10)


The short review is this: if you want to know threads inside and out, buy this book.

For those who want more details, you may read on. This book assumes no Thread knowledge. By the end of the book, you will understand the finer points of thread programming. The book is broken down into three parts.

Part 1 shows you all of the ins and outs of threads. There is a lot of sample code and many details. This section will give you all you need to know to program with threads.

Part 2 shows several techniques for good thread design. I found the chapter on breaking out of a blocked I/O state particularly informative.

Part 3 has the Thread API and the ThreadGroup API. It is a nice reference, but not particularly necessary.

It is hard to find negatives about this book, but I did manage to find two. The primary negative is that the reading is a little dry. It wasn't so dry that the book was unreadable. The other negative is that there is no website to download sample code. This didn't affect me much since I prefer to type in the code anyway, but others might find that to be a major drawback.

Discuss book in the Saloon More info at Amazon.com




Advanced Java 2 How to Program
by Harvey M. Deitel, Paul J. Deitel , Sean S. Santry


Prentice Hall
unknown edition
October 2001
1496 pages

Reviewed by Johannes de Jong, December 2001
  (8 of 10)


As complete a coverage of the Java platform as one can get.

Each chapter briefly explains the Java technology it covers and then shows you how it is used. Every listing is explained in detail. I find the explanations clear and easy to understand. I however hated having to page back and forth in the book to see the explained code in context. Separate listings book ?

Their case studies are relevant and can be used as a great resource for your own projects at home and at work. It would have been nice if Class Diagram's were added. This would have helped one to understand the solutions better.

Considering the pure volume of the example code you will forgive me that I did not install and try it all. But what I've played around with compiled and worked perfectly.

The accompanying CD is a gem. Other authors should use it as an example to see how it should be done. I was especially impressed by the installation instructions for the accompanying software; clear, precise and accurate.

Yep I have to say something about it. I love the color they use extensively in the book. It makes the reading of listings especially easy.

This book must be one of the most complete Java books available at the moment. I highly recommend it.

A note of caution, don't expect in depth overage on each subject. There simply is no space. They however provide extensive resources for further studies.

Discuss book in the Saloon More info at Amazon.com




Java Platform Performance: Strategies and Tactics
by Steve Wilson, Jeff Kesselman


Prentice Hall PTR
1 edition
June 2000
256 pages

Reviewed by Randall Twede, May 2001
  (8 of 10)


With the latest release of java, version 1.3, performance is less likely to be a problem. Between the new hot spot virtual machine and performance tuning in the various packages, java is much faster than before. However, performance is important and if you have a performance problem this book most likely has the information you need to identify where the problem is and techniques you can use to remedy it. Many of the techniques described in this book are based on knowledge the author gained while improving the performance of the Swing toolkit. The book is well written, easy to understand with good examples. Many of the sample codes are useful in their own right. I'm glad it's on my bookshelf.

Discuss book in the Saloon More info at Amazon.com




Advanced Programming for the Java 2 Platform
by Calvin Austin, Monica Pawlan


Addison-Wesley Longman
unknown edition
September 2000
400 pages

Reviewed by John Ternlund, November 2000
  (8 of 10)


This book covers the basics of some advanced programming techniques by building small examples utilizing these techniques. I am a BIG fan of looking at example code and like having lots of good examples at my finger tips. The key words here are "lots" and "good". This book succeeds in providing some useful examples for an advanced Java developer to look at. It attempts to cover a lot of information in a small book and manages to provide some decent examples of entity and session beans, RMI, some CORBA, a little JDBC, Servlets, and JNI. It also has some nice sections on Java debugging and performance tweaking. Like any "example" type book, the examples contained in it may or may not be the examples you are looking for.

Discuss book in the Saloon More info at Amazon.com




The Java Class Libraries, Volume 1
by Chan, Patrick


Addison-Wesley Professional
second edition
March 1998
2050 pages

Reviewed by Paul Wheaton, January 2000
  (9 of 10)


This book is still focused on the 1.1 stuff, but when the time comes to use a class you haven't used before or maybe the method of a class you haven't used before, this book can't be beat. Not only does it have thorough descriptions, but it gives examples for every method. That's something you don't find in the javadocs! This book covers the non GUI core library: io, lang, math, net, text and util.

Discuss book in the Saloon More info at Amazon.com




The Java Class Libraries, Volume 2
by Chan, Patrick / Lee, Rosanna.


Prentice Hall PTR
second edition
October 1997
1712 pages

Reviewed by Paul Wheaton, January 2000
  (9 of 10)


This book complements Volume 1 and covers GUI stuff: awt, applet and beans.

Discuss book in the Saloon More info at Amazon.com




Special Edition Using Java 1.2
by Weber, Joseph L .


Que
fourth edition
September 1998
1414 pages

Reviewed by Kathy Sierra, May 1999
  (8 of 10)


A rather large book, suitable for bench-pressing when you're waiting on a slow connection. If I was stranded on a desert island and could take my laptop and only one Java 1.2 book, this would be the one (benefit your brain AND your biceps). Warning: Que publishes another book also called Using 1.2, but it is NOT the same book and I didn't like it. Be SURE you look for the "Special Edition" part of the title.(Jan 2000 update: the publisher sold all the copies they made!)

Discuss book in the Saloon More info at Amazon.com




Professional Java Custom UI Components
by Kenneth F. Krutsch, David S. Cargo, Virginia Howlett


Peer Information
1 edition
August 2001
500 pages

Reviewed by Bill Nicolai, September 2001
  (8 of 10)


Professional Java Custom UI Components takes the reader through a planning, design, and implementation philosophy for creating custom user interface components. Hints and tips are discussed, giving important insight for creating components. The authors concentrated on the basic principles of design without creating another reference book. Also, rather than laying out all the nitty gritty code detail, the most interesting portions are highlighted and discussed. A handful of custom components are built to demonstrate these principles. Both the source code and documentation can be downloaded from WROX, and are copyrighted by Krutsch Associates, Inc.

The book tour starts with a discussion of the user interface design, the importance of a good interface that is intuitive to use, and the attention to detail required for a UI component. The authors take the reader through the planning and implementation of a toggle switch and LED component, implementing the event model, specifying the parent container interaction, and rendering strategy. Many tips are provided so that the reader may avoid common pit falls. More complex components are discussed and implemented.

The book ends with an overall software development process and component maintenance. Until this point, the focus has been the "how" of building custom components, now the discussion shifts into a larger context. The authors stress the importance of both before and after the initial implementation.

I recommend reading this book for anyone designing and implementing custom UI components.

Discuss book in the Saloon More info at Amazon.com




Java 2, J2SE 1.4 Complete
by Sybex, Inc.


Sybex
1 edition
June 2002
1008 pages

Reviewed by Colin D. Bennett, August 2002
  (7 of 10)


This highly practical book is an interesting compilation of five other Sybex. Its broad coverage and the low price for just over 1000 pages makes it hard to find another book this economical. This book is more of a how-to than a reference, starting with basic object concepts and moving on to I/O, threads, AWT and Swing components, and JavaBeans. I found the chapter on custom GUI components particularly interesting. Developers of all experience levels will get something out of this book.

One of the unique features of this book you will come to appreciate as you read it is you get to preview several other books. The table of contents, as well as each chapter's opening page, identifies the book and the author or authors each chapter was drawn from.

My main complaint is related to its title. The "J2SE 1.4" label has been slapped on this book without actually including any real J2SE 1.4 content in it. I expected more serious coverage of J2SE 1.4 features.

I didn't find the appendix, "The Essential Java 2 API Reference", to be essential at all. It consumes about a third of the book's pages, but provides only an alphabetical listing of standard Java classes, fields, and method signatures.

If you don't already own the predecessor to this book, "Java 2 Complete", which has almost identical content, this book is a worthy addition to any Java programmer's bookshelf.

Discuss book in the Saloon More info at Amazon.com




Enterprise Java Programming with IBM WebSphere
by Kyle Brown, Gary Craig, Greg Hester, Jaime Niswonger, David Pitt, Russell Stinehour


Pearson Education
unknown edition
May 2001
544 pages

Reviewed by Johannes de Jong, August 2002
  (9 of 10)


It is a pity that this book might end up being labeled out-of-date because it uses the now already "outdated" VAJ as its IDE.

I requested to review this book because I hoped that I would get the updated book using WSAD 5.0. But after reading the book I realized there was no need to have the updated book. Sure it teaches how to implement certain solutions with VAJ 3.5 and Websphere, but that is not what this book is about. It teaches one what to THINK about when creating web based enterprise solutions, it teaches one to understand what J2EE is all about !!!

What this book also did for me is finally to understand what patterns are all about and why they are needed in the Java world. I for one will start digging into patterns thanks to this book.

It is a well-written book by professionals that clearly know what they are talking about and I highly recommend it. Even though the software the book uses is out of date the knowledge it imparts surely is not.

If you are interested Kyle has a pretty useful site.

As a parting shot, we are planning to use the example project of this book to test our conversion strategy from VAJ 3.5.3 to WSAD x

Discuss book in the Saloon More info at Amazon.com




The Complete Java 2 Training Course
by Deitel & Associates (Editor), et al


Prentice Hall PTR
fourth edition
November 2001
1100 pages

Reviewed by Johannes de Jong, February 2003
  (7 of 10)


I've always been a fan of Deitel books but I have always found them heavy going to read from cover to cover. I mostly grab their books when I need to know how something is done. I can t remember the time they let me down when I needed help.

When I asked to review their Multimedia Cyber Classroom, I wanted to see if it would help me work through the whole book, because I honestly feel that if I could manage to do that, I will become a much better Java programmer. But alas it was not to be.

In general, I found the audio parts boring and of very little added value. Good points for me were the electronic Assessment exams but I wish they did the same for Self Review exercises. What I found fantastic was the fact that the complete book, Java How to Program, was available in electronic searchable format.

The CD is a constant companion in my briefcase now, it weighs much less than the book I promise you, and I get a lot of joy out of this easy way finding Java knowledge, and for that alone I advise you to get the Cyber version of this fantastic book, if you have the extra money.

The book gets a rating of 8, heck everything you want is there, but I'm afraid I can't give the Cyber part more than a 6, which makes a 7 average.

Discuss book in the Saloon More info at Amazon.com




The Complete Java 2 Training Course
by Deitel and Deitel


Prentice Hall PTR
5th edition
May 2003
1500 pages

Reviewed by Salman Halim, June 2003
  (8 of 10)


This package includes the full-color text "Java How to Program, Fifth Edition". The book has been reviewed elsewhere on this forum.

Running the multimedia portion (after installation) launches the default browser, although it requires IE. I simply copied/pasted the main URL into IE. Wouldn't work. Turns out a startup page downloads an ActiveX plugin that is required for the presentation links to work -- this then quickly goes on to the main page of the book's text so can be easily missed. So, not only must IE be installed on your machine, it must be the default browser! A beginner (on a system someone else configured with Netscape, for example) might have given up. This does only happen once.

The entire book's contents are available online -- there is also a very good search capability. I closed the actual book in the middle of the third chapter since the references in the text are all hyperlinked and the code examples are not only all voice-annotated but can actually be executed!

The post-assessment exams (proper HTML forms) for each chapter are a good touch and mesh in well with the end-of-chapter exercises. A total score for the test on a per-chapter basis would have been nice, though.

Final comments: the book and multimedia work well together. Read the sections of text in the book, but keep the multimedia version open -- the code examples really shine online.

Discuss book in the Saloon More info at Amazon.com




Technical Java: Applications for Science and Engineering
by Grant Palmer


Prentice Hall PTR
1 edition
April 2003
496 pages

Reviewed by David O'Meara, June 2003
  (6 of 10)


While reading this book I kept wavering between enjoying the information presented and wondering what it was trying to accomplish. It begins with sections dedicated to people moving from C, C++ and Fortran, but there isn't enough coverage and it doesn't say much more than "Java is not so different".

The sections on differential equations, integration and Fourier transformations are useful, but some of the examples get caught up explaining more about the problem than the solution. At times you may be learning more about fluid dynamics than technical programming.

There are also short sections on IO, GUIs and web based applications that may be useful as an introduction to the topics in Java, but you would get better coverage of the IO and GUI features in a beginners book.

There are plenty of examples of technical problems presented in the book, but I can't see it persuading C or C++ developers to make the move to Java.

The book does get the message across that Java is a great choice for building technical programs, but you might be better off with the combination of a beginner Java book for the syntax and a language neutral book for the algorithms.

If Java is going to be accepted for building scientific and engineering programs, more technical books need to be written using Java as the reference language. I'm not sure this book counts, but it might be a place to start.

Discuss book in the Saloon More info at Amazon.com



Prentice Hall PTR
1 edition
April 2003
496 pages

Reviewed by Simeon Pinder, June 2003
  (9 of 10)


This book is not directed at typical java developers but more for scientific programmers predominantly using other languages to write numerical analysis applications. Don't get it twisted though, there's lots of information here for java developers writing numerical analysis code. Many science and engineering programmers think java is too slow and is ill suited for "hard core" numerical analysis. This book is clearly written and dispels many misconceptions concerning java and its math capabilities.

For starters, there are transition chapters for traditional numerical analysis programmers from C, C++ and Fortran, which highlight differences to be aware of if you make the switch. Next up are a few chapters on java basics and syntax for the uninitiated, while communicating sound OOP practices. The author makes the switch look a little too easy, but ok. Following was an exciting chapter pitting the innate java math libraries against the big numerical analysis three (C, C++ and Fortran). That was cool.

The next eight chapters were worth the purchase off the bat. Complete with clear descriptions, use case examples and implementation code (I'm a big fan!) for numerical analysis techniques involving matrix operations, solving differential equations and Fourier transforms to name a few. The math isn't trivial. As a java developer holding B.S. degrees in Computer Science and Molecular Biology, I have many colleagues who misunderstand java and its capabilities. This book, by a NASA engineer of 18 years, demonstrates how java addresses their analytical needs.

Discuss book in the Saloon More info at Amazon.com




Mac OS X for Java Geeks
by Will Iverson


O'Reilly
1 edition
April 2003
304 pages

Reviewed by Simon Brown, August 2003
  (9 of 10)


I've had a PowerBook for about three months now and I thought that I had Java on Mac OS X figured out. How wrong could I be! First of all, it's worth pointing out that Mac OS X for Java Geeks by Will Iverson is not your normal Java book. It doesn't teach you how to use Java, and it doesn't teach you how to use Mac OS X either. Instead, it takes you on a tour of what's available for us Java developers on the Mac OS X platform, looking at topics that pull together to make Java development an easier and richer experience.

First up is a look at Apple's implementation of J2SE and how configuration of the Java environment differs slightly from other platforms. This is certainly something that does confuse most Java on Mac newbies (myself included) and it's great to see an explanation of how this all works. Next is a discussion of a selection of tools that are useful to Java developers, including all the usual text editors, IDEs, open source projects and even some tools that are bundled with OSX that you might not have found. Again, all very useful stuff, particularly with Mac OS X specific tips thrown in here and there.

Now we get to the interesting stuff by stepping up a gear and looking at the development of desktop applications for Mac. Apple's JVM includes an implementation of the native Aqua look and feel for Swing, meaning that you can write applications in Java that look native. Here, we re treated to a fascinating discussion on some of the usability issues and gotchas associated with cross-platform GUI development. With this in mind, the book then goes on to look at some of the Apple specific features and extensions that we can take advantage of in our applications, along with some strategies to help ensure that our Java applications are still cross-platform compatible. This includes integration with things like the Finder and Dock, and we also find out that it is possible to package up Java applications in the same way as native applications, rather than delivering an executable JAR file. After all, one of the key mantras behind Mac OS X is the richness of the user experience!

Moving on, and if that's not enough, the book delves into some of the Java APIs that Apple provides if you are targeting Mac as your deployment platform, including a look at the Speech, Spelling and QuickTime APIs. The functionality provided by these APIs is amazing, although the actual APIs themselves are incredibly simple. The coverage of the APIs is well balanced. There's just enough to whet your appetite while still providing a good overview of how to use them.

Finally, the book moves on to look at how to use some of the more mainstream development tools such as MySQL, Tomcat, JBoss and web services. Again, there's a lot of useful information in here although it's not as Mac OS X focused as the rest of the book, instead providing a simple instructional approach to getting something simple coded and running. Sure, there are some Mac specific hints in here, but these sections seem to be aimed at developers who are new to these technologies.

Overall this is a great book, and the use of a simple yet very complete example throughout the book makes it very easy to read and follow exactly what's going on. My only real criticisms would be that the last few chapters are focused more on using the technologies (e.g. building your first JSP-based web application) and it might have been good to see a section that talked about J2ME development on OSX, just for completeness. In summary, if you're an existing Java developer and have recently moved over to the Mac, I strongly recommend this book. I only wish I had found it sooner!

Discuss book in the Saloon More info at Amazon.com




Web Services Patterns: Java Edition
by Paul B. Monday


Apress
1 edition
April 2003
352 pages

Reviewed by Thomas Paul, August 2003
  (8 of 10)


Now that we have read all the books on the basics of web services and have a good understanding of how they are supposed to work it is time to get down to actually trying to create some decent designs for our web services applications. That is where this book fits in. The book shows how to apply design patterns to a web service architecture in order to solve common design problems. If you are designing a web service architecture you will want to read this book before drawing another UML diagram.

The book starts out by looking at the design patterns used in web services itself. This part of the book was interesting but not overly useful. The next part, making up most of the book, covers design patterns that you are likely to need in developing web applications. This part of the book is excellent. Each pattern is discussed in detail and then demonstrated in a case study that is developed throughout the book. The book covers twenty different patterns so there is bound to be one that is applicable to your application.

The book contains only snippets of code from the case study so you will need to download the code in order to get the full value of the case study. The reader of this book should be comfortable with web services and design patterns in general and be ready for an in-depth discussion of web services architecture.

Discuss book in the Saloon More info at Amazon.com




JSP: Practical guide for Java Programmers
by Robert J. Brunner


Morgan Kaufmann
1 edition
September 2003
179 pages

Reviewed by Frank Carver, November 2003
  (7 of 10)


This is a slim and easy to read book which covers JSP 2.0 in just about the right amount of detail to get a competent Java programmer up to speed quickly and effectively. As well as JSP there is a also a very brief and shallow introduction to a few other associated technologies: servlets, CSS etc.

The writing style is polished and comfortable, but a worrying number of typos and other errata have slipped through the editing process, in particular in the first part of the book. I suggest it would be a good idea to check the associated web site before relying on the printed code and configuration examples. I'm also uneasy about the choice of example application used as a case study throughout the book. While everyone is likely to understand the idea of a bank, the examples given neither make a very convincing bank, nor make particularly good use of JSP technology.

This book will be useful for anyone starting work on a web application project which makes use of JSP 2.0, but who doesn't want to wade through the specification documents. If your project still runs on an older version, this book will only be frustrating, but it might just tempt you to upgrade.

Discuss book in the Saloon More info at Amazon.com




Bluetooth Application Programming with the Java APIs
by C Bala Kumar, Paul J. Kline, Timothy J. Thompson


Morgan Kaufmann
1 edition
September 2003
498 pages

Reviewed by Lasse Koskela, November 2003
  (9 of 10)


My prior knowledge about Bluetooth can be described with one word --superficial. Therefore, I hail the authors for making a brave move. The book is not just an introduction to the Bluetooth Java APIs but also an introduction to the whole Bluetooth architecture and terminology. The fact that a lot of space is used to explain the underlying protocols specified in the Bluetooth specification can be both a godsend and a sleeping pill. For me, it was a godsend.

The book starts with a brief overview to what Bluetooth is as a technology. Then, JABWT (Java API for Bluetooth Wireless Technology) and how is it positioned in the field of various J2ME technologies is explained to set the architectural vision into the reader's mind. This section of the book is a very pleasant read, giving out just the right amount of information.

Next, the authors continue by tackling each main acronym one at a time using a recurring pattern: introduce technology, introduce API, illustrate with snippets of sample code. This section covers approximately half of the length of the book and can be labeled "the meat". Some portions, such as the chapters about service records, are slightly too detailed for my liking (as someone new to the whole Bluetooth scene), but mostly, the content is straightforward and easy to grasp.

After having discussed all the big things in Bluetooth for Java, two sample applications are introduced. The full source code for examples throughout the middle chapters has been included as appendices for the reader's comfort. Also, the Bluetooth APIs have been included as appendices, which I personally would've left out but also don't mind having it there. Finally, the book contains one chapter that seems somewhat displaced, providing guidance for implementing/porting the JABWT on a device.

As a closing remark, I feel that this book is a wonderful piece of work and well worth reading for developers new to Bluetooth technology and the related Java APIs. Its approach suited me perfectly.

Discuss book in the Saloon More info at Amazon.com




Pragmatic Unit Testing in Java with JUnit
by Andy Hunt, Dave Thomas



Using and Understanding Java Data Objects
by David Ezzio


Apress
1 edition
June 2003
456 pages

Reviewed by Ernest Friedman-Hill, January 2004
  (6 of 10)


This book is loosely divided into three parts: a conceptual overview, an API tour, and some application case studies. The overview is dense and would be scary for someone new to persistence.

The API section is the largest. One chapter is devoted to each key JDO interface. These chapters read like heavily annotated Javadocs; the subheads roughly correspond to the interface methods. Each chapter is accompanied by a UML diagram of a single class; a listing would be more useful.

The case studies are the best part of the book. Each is filled with practical advice for using JDO in a particular environment (servlets, EJBs, Swing). This material could save you countless hours of frustration.

One thing this book lacks is code. When code does appear, it's an Ant build file, or a class showing how to use the "transient" keyword, or something else peripheral to the main topic. There is essentially no real JDO code at all until the case studies at the end of the book.

Also noticeably missing is an introductory tutorial. There's no "Hello, JDO" program here. Many programmers want to see a basic program like this; its absence is disappointing.

This would make a good second book on JDO -- a reference you could turn to for details after you already knew your way around. You may also want a book with more code and tutorial content, and the writing is rough, but the case studies are full of great advice.

Discuss book in the Saloon More info at Amazon.com




Pro JMX: Java Management Extensions
by J. Jeffrey Hanson


Apress
1 edition
November 2003
296 pages

Reviewed by Valentin Crettaz, May 2005
  (8 of 10)


According to many sources, software infrastructure is becoming increasingly and needlessly complex to develop and hard to manage. Moreover, the effective management of software and its underlying resources is even harder when dealing with systems operating in highly distributed environments. As a consequence of this sad reality, software maintenance and development costs are skyrocketing in proportions never seen before.

The primary goal of Pro JMX is to expose the value proposition of the Java Management Extensions (JMX) and to demonstrate how JMX can solve the aforementioned issues in both the desktop and enterprise Java worlds. Initially, the author starts by introducing some basic concepts about system resource management and then delves deeper into the three-level model of JMX (instrumentation, agent, and distributed services) by presenting the different types of MBeans and how they are exposed by agents to remote clients. Advanced topics, such as, remote lookups, security, and distributed management system design are also handled. Finally, a comprehensive list of many free and commercial JMX products is given.

Even though I have found this book to be an excellent resource about JMX, my only complaint would be that some parts could have been written in much simpler terms. This detail aside, my advice to all those who find remote software management to be a pain in the neck is to jump off your Aeron chair, grab a copy of Pro JMX at your local bookstore and stick yourself deep into your La-Z-Boy for a relaxing reading experience.

Discuss book in the Saloon More info at Amazon.com



Apress
1 edition
November 2003
296 pages

Reviewed by Lasse Koskela, May 2004
  (5 of 10)


I wasn't completely new to JMX when I picked up this book. Yet, I felt uncomfortable with how fast the author dove into details that would be relevant to someone who's about to write a JMX implementation, not to a regular user of the technology.

The book's structure is also a bit inconsistent, in my opinion. For example, the author jumps into describing the history and patterns of distributed management system design in chapter 5 -- after two introductory chapters and two very code-focused chapters.

As an advanced manual to itty bitty details of how connectors etc. are implemented, this book is excellent. It's too bad that the back cover doesn't give any indication of this focus. If you're looking for a guide to learn or "just" use JMX, I'd suggest looking elsewhere.

Discuss book in the Saloon More info at Amazon.com




Software Architecture Design Patterns in Java
by Partha Kuchana


AUERBACH
1 edition
April 2004
416 pages

Reviewed by Lasse Koskela, August 2004
  (9 of 10)


Design patterns used to be the hottest topic around a couple of years ago. One of the side-effects was the "Applied Java Patterns" book which I very much liked and used to recommend to anyone looking for a "GoF" replacement using Java for code examples. Not anymore. From now on, I'm recommending Kuchana's "Software Architecture Design Patterns in Java".

Why am I so pleased with this book? What makes it any different than other design pattern books? Well, first of all the volume is huge. Kuchana's book covers all the original Gang of Four patterns plus another 20 or so patterns, including a couple of multithreading related patterns. Second, the text itself is very readable and doesn't cling too much on fancy words. The explanations are concise and to the point. Further kudos goes to dealing with such frequently asked questions like the difference between Factory Method and Abstract Factory.

To list some things I didn't like about this book, I have to say that having exercises without sample answers in the back was a tiny disappointment and I would've preferred a bit more condensed font for the code listings. That's about it.

All in all, a very good choice for filling the gaping design patterns encyclopedia slot in your bookshelf. Highly recommended.

Discuss book in the Saloon More info at Amazon.com




Java 1.5 Tiger : A Developer's Notebook
by David Flanagan, Brett McLaughlin


O'Reilly
1 edition
June 2004
200 pages

Reviewed by Ernest Friedman-Hill, January 2005
  (8 of 10)


The foreword to this new O'Reilly series explains that a "Developer's Notebook" is the raw scribbling of an "Alpha Geek" as he or she examines some exciting new technology. That pretty much describes "Java 1.5 Tiger." It's raw, it's scribbling, and it's exciting nonetheless.

At a slim 177 pages, this is one of the shorter general Java books you're ever likely to see. There isn't a lot of fat between these covers. Over the faint blue graph-paper lines and the cute faux coffee stains, the concise text covers just the biggest new features in JDK 1.5: generics, varargs, autoboxing, annotations, printf, enumerations. Many of the plentiful code examples are sensible and give you a realistic idea of how to use a feature. Some of them, unfortunately, are rather contrived and don't make much sense.

My main brickbat for "Java 1.5 Tiger" is the very high incidence of typos, more in the text than in the code. Raw scribbling is one thing, but accuracy is important, too; a programming book demands it. My main bouquet is that I learned a lot from reading it, and honestly, you can't do much better than that.

Discuss book in the Saloon More info at Amazon.com



O'Reilly
1 edition
June 2004
200 pages

Reviewed by Jeanne Boyarsky, August 2004
  (10 of 10)


"Java 1.5 Tiger: A Developer's Notebook" has all the information and quality we have come to expect from O'Reilly However, the developer's notebook series has a very different style than the animal books. The book was a true page-turner and I read all 171 pages in two days.
This book really looks like a notebook complete with notes in the margins, graph paper and coffee cup stains! There is also plenty of room in the margins for the reader to add notes. This book is informative, useful and looks really cool!

A guru narrates the book. He tells you about Java 1.5 and answers your questions. Each chapter discusses several labs in a task/how to I do that?/what about ... format. It is like the author walks you through doing the labs. It really does read like a conversation. As the authors put it: "All lab, no lecture."

The code examples begin on page two and are prevalent throughout the book. The authors give warnings about common pitfalls and tasks that you cannot do -- just like you would expect a guru to do. The authors also give opinions and recommendations.

The book assumes a working knowledge of java 1.4 (or earlier.) This is especially important in the concurrency section. There is excellent cross-referencing so the chapters and tasks can be read in almost any order. I would not give a 10 unless a book was amazing. This one earned it!

Discuss book in the Saloon More info at Amazon.com




Java Studio Creator Field Guide
by Gail Anderson, Paul Anderson


Prentice Hall PTR
1 edition
July 2004
368 pages

Reviewed by Thomas Paul, November 2004
  (9 of 10)


Sun's Java Studio Creator makes use of JavaServer Faces (JSF) to allow visual development similar to Microsoft's Visual Studio. It is an easy to use IDE that allows you to drag and drop components, validators, and converters to build a web application. Much of the code required is automatically generated by the tool. This book a well-written and easy to follow step-by-step tutorial that will teach you how to use the IDE and quickly create web applications.

The book starts with a chapter on Java that can be easily ignored. The next chapter gives a quick introduction to the IDE. The authors demonstrate many of the basic techniques and show how to use the visual features to create navigation for a multi-page web site. The third chapter discusses each of the JSF components that are available in the IDE. Chapters four and five demonstrate how to use these components to build a web application. The examples are simple but show how to integrate the generated code with generated beans. Chapters six and seven show how to integrate Web Services and databases into your application. Chapter eight looks at internationalization and writing custom validators. The final chapter covers debugging.

If you have a copy of the software and want to utilize it to the fullest then this book is well worth buying. If you don't have the software then look at ISBN 0131499947 to purchase the book and the software together.

Discuss book in the Saloon More info at Amazon.com




Building Portals with the Java Portlet API
by Jeff Linwood, David Minter


Apress
1 edition
August 2004
393 pages

Reviewed by Valentin Crettaz, April 2005
  (9 of 10)


Information is as vital to success-striving companies and individuals as blood is to living creatures. As far as productivity is concerned, it is critical that heterogeneous corporate information systems (such as, email systems, ERP, CMS, CRM, databases, etc.) be organized in a way that allows employees at any level of the organization to seamlessly exploit and manage the massive amount of stored and generated data. This book introduces the value proposition of corporate portals when it comes to dealing with the problematic of efficient information organization and management.

Building on their long experience of developing corporate portals, the authors demonstrate how to create JSR 168 (Java Portlet API) compliant enterprise portals. They first introduce basic portlets concepts and go on explaining how to create, package, deploy and configure portlets, how to let users personalize them, how to provide single sign-on security, and how to expose portlets to the outside world or to make use of remote web service portlets. A couple of other interesting topics are also touched upon, such as creating RSS, syndication and search portlets, using portlets with JSP and servlets and integrating portlets with JSR 170 (Java Content Repository API) compliant content management systems.

If you find yourself routinely switching among several different applications to carry out your daily activities and you are dreaming at night of a single entry point to all your information systems, remember that this book is not an expenditure, it's an investment !

Discuss book in the Saloon More info at Amazon.com



Apress
1 edition
August 2004
393 pages

Reviewed by Thomas Paul, December 2004
  (8 of 10)


Portals are becoming more popular as companies are looking for a single web-based entry point into their various applications. Java provides a standard portal model with JSR 168. This book is a thorough introduction into JSR 168 that will help get portal developers up to speed into this relatively new specification.

The first seven chapters an excellent introduction into developing portlets. Response and request objects are covered in detail. The portlet life cycle is clearly explained. Deployment descriptors are discussed. Integrating with Servlets and JSPs is described. The remainder of the book covers more advanced topics. Anyone working with a portal knows the problems with providing single sign-on to multiple applications. The authors discuss this issue giving several examples. The authors cover syndication, searching, personalization, web services, content management, and more.

My only complaint with the book is that it uses the Apache Pluto portal, which is not in final release yet. Pluto is an open source portal but it is complicated to distribute content to it (you are forced to use Maven). When the book explains how to distribute portlets to Pluto it gets a little confusing because the authors need to explain multiple configuration files, some of which are exclusive to Pluto. Other than this one problem, the book gives a solid introduction to developing a portal providing detailed information of both the basics and many advanced concepts. Clearly the authors understand portal development and know how to pass that information on to their readers.

Discuss book in the Saloon More info at Amazon.com




Java/J2EE Job Interview Companion
by K.Arulkumaran


Lulu.com
1 edition
April 2007
356 pages

Reviewed by Balaji Loganathan, March 2006
  (8 of 10)


In its own ethics this is a very unique book. Though there are tons of internet sites listing the j2ee interview questions, the author of this book has taken great effort and care to list the questions and answers. The book leaves no topics un-turned. Gives very clear and short explanations for every topic and questions and goes through in-detail if needed. The answers were followed by neat images if necessary, which many other site/book doesn't. This book will certainly help both the interview host and attendee. I liked the chapters related to Design patterns, WebSerivces and Testing, which you may not find other books/sites. Very well organized for quick interview preparation as well. The advantages and disadvantages of each piece of j2ee are discussed. Section 3 of this book "how would you go about..." is very well written and each question were the real ones that you will come across in technical interview. Reading this book will sure give you confidence for answering the questions that were not covered in this book for brevity reasons. A best bet for preparing j2ee technical interview and its worth buying.

Discuss book in the Saloon More info at Amazon.com




Practical Ajax Projects with Java Technology
by Frank Zammetti


Apress
1 edition
July 2006
528 pages

Reviewed by David O'Meara, September 2006
  (8 of 10)


I have read some AJAX books and enjoyed them, but they typically concentrate on the client side and coverage of what occurs on the server side, if any, is generally PHP or a smattering of almost anything. But I'm a Java guy. The book I've been looking for would have not only the server side examples in Java, but would also use Java as the basis of discussion on client-server communication and the tools available to ease the whole process.

The examples cover a variety of interesting projects and technologies, but the coverage of CSS, JavaScript, Servlets etc is very light as to be almost non-existent. Some of the sample code has been cut and paste without too much scrutiny, so they are often bloated by useless or even empty javadoc blocks but this is more of a annoyance than a real problem. Appendix B has several pages of useful links, but I would have liked to have seen this as a closing chapter of the topics that didn't warrant complete coverage.

Interestingly, while core AJAX books tend to favour the client action and be light on what happens on the server, this book leans the other way. If you are looking to buy a single book to cover AJAX this will cause you a problem, but now that you are fore-warned if you get the correct combination of client and server AJAX coverage you'll be well served for your future needs.

Discuss book in the Saloon More info at Amazon.com




SOA Using Java Web Services
by Mark D. Hansen


Prentice Hall PTR
1 edition
May 2007
608 pages

Reviewed by Ulf Dittmer, October 2007
  (7 of 10)


The book covers the development of web services using the Java EE 5 platform. It provides a comprehensive yet detailed overview of the various components that play a part in it, from JAX-WS clients using REST and SOAP, through data binding with JAXB, to developing, packaging and deploying JAX-WS services, and the various JSR standards covering these technologies. The author also points out the shortcomings of these APIs, and possible workarounds.

At every step of the way ready-to-run example code is presented that illustrates the points made in the text. The code is also tied to numerous WSDL and Schema examples, so the reader should not be afraid to delve into those. The examples culminate in a program accessing various shopping sites via web services, and exposing their accumulated information via a web service itself, thus tying both ends together.

The writing is technical and to-the-point. Sometimes the minutiae of the examples become a bit exhausting, but if a chapter isn't of immediate interest to the reader, it can generally be skimmed over; the chapter introductions and conclusions provide enough hints that the reader knows what he's missing.

This reviewer wouldn't recommend the book as a tutorial for someone who's never developed web services. It is a good introduction to JAX-WS and associated APIs for experienced developers, though, or a reference of the finer points for anyone who doesn't use these technologies continuously.

Discuss book in the Saloon More info at Amazon.com




Core Java, Volume I--Fundamentals
by Cay S. Horstmann, Gary Cornell


Prentice Hall PTR
8th edition
September 2007
864 pages

Reviewed by Jeanne Boyarsky, October 2007
  (9 of 10)


"Core Java, Volume I -- Fundamentals" is meant to teach Java to developers who already know another language. Or as they put it, "serious programmers ... with a solid background in a language other than Java." This is important as the book assumes a knowledge of programming concepts. As such, the authors can explain OO rather than how a loop works. The syntax diagrams and flow diagrams offer concise explanations.



This edition (the eighth of the book) covers Java 6. I liked that each section was updated to reflect changes to the languages. The authors didn't just tack on some chapters about the new features. They integrated features as they made sense. More importantly, they updated existing examples to reflect the way they would be written if they were initially written today. This gives the reader appropriate exposure as to when to use new features. At the same time, the authors point out what was added in Java 1.4 so you can use it with an older version. There was even a screenshot of Windows Vista in the getting started section.

The book is about 800 pages. Some of this is long classes and API extractions. The authors do highlight important code snippets with explanations first, so it is possible to skip these parts. I did like the feature of the API extractions that showed when methods were introduced.

The authors explain Java in practice well including caveats. There are a few carefully labeled sections that are quite advanced. (proxys and new classloaders.) This is definitely not just an intro book! There was a bit of premature optimization. I don't see a need to worry about whether ArrayList is efficient unless it is a problem. At the same time, it is important to know why things work the way they do.

I recommend this book if you are looking to learn Java or have only used certain pieces of it. Just be sure to read the TOC carefully as the authors branch out. For example, the inheritance chapter covers var args and reflection.

Discuss book in the Saloon More info at Amazon.com




Scripting in Java - Languages, Frameworks and Patterns
by Dejan Bosanac


Addison-Wesley Professional
1 edition
August 2007
552 pages

Reviewed by Ulf Dittmer, November 2007
  (6 of 10)


This book aims to be an introduction to combining Java with scripting by presenting popular Java-based scripting languages, making the case for when and how to use scripting and Java, explaining the prevalent APIs, and showing some useful patterns of how to make it work.

A full third of the book is taken up by introducing scripting APIs, namely the Apache Bean Scripting Framework (BSF) and the javax.script package found in Java 6 and its non-yet-released web scripting component.

Another quarter is used for an introduction to Groovy, and many examples are written in that language; so if for some reason Groovy is of no interest to the reader that might be a drawback. JavaScript and (to a lesser degree) PHP are the other languages being used.

While just about everyone interested in the subject will find something (or a few somethings) of interest in this book, it doesn't feel like a coherent whole. It touches authoritatively on a number of subjects, amongst which the reader will choose which ones are applicable to him, and ignore the remainder. The style is technical, and even through the author seeks to present motivation repeatedly as to why to use scripting with Java, this becomes a bit tedious after a while. Overall the book is quite readable, though, and the numerous code examples interspersed with the text help provide some out-of-the-box applicability of the concepts presented.

Discuss book in the Saloon More info at Amazon.com




Service Oriented Java Business Integration
by Binildas C. A.


Packt Publishing
1 edition
February 2008
436 pages

Reviewed by Marc Peabody, May 2008
  (5 of 10)


I was hoping to simply learn more about Java Business Integration. The first 70 pages are a decent start on this. Following that, however, ServiceMix component tutorials abound, and not in an entertaining cover-to-cover read kind of way.

The writing is often wordy and grammar and spelling slips are fairly common. Most books I set down to thoughtfully consider interesting points but more often I wondered why the author boasted working with many desperate systems (later I realized the author meant disparate) or if wetting my hands with code was anything like getting them dirty.

There isn't much of a practical flow from chapter to chapter, the "Use Cases" never really explain the problems that the samples solve, and seeing the my console's output match the book's screenshots after running the code (which is completely downloadable) isn't particularly gratifying.

If you're working with ServiceMix but frustrated by a lack of documentation, then this book might be the right fit for you. Otherwise I recommend you save your money for something else.

Discuss book in the Saloon More info at Amazon.com




Professional Java JDK 6 Edition
by W. Clay Richardson, Donald Avondolio, Scot Schrager, Mark W. Mitchell, Jeff Scanlon


Wrox
1 edition
January 2007
741 pages

Reviewed by Michael Ernest, May 2008
  (6 of 10)


Professional Java attempts something I don't think one book can do well, which is to say something useful on every topic. This book's sections include: updates to JDK 5; project methodologies; design patterns; build tools; persistence tools; UIs; web applications; JNI; EJB 3; SOA; security; and packaging and deployment. It wants to be a "one-stop shop," and that's fine, but I can't tell who the target shopper is.

Topic coverage varies wildly, in writing style, quality and in the effectiveness of sample code to illustrate the point. Too many descriptions are verbose and phrased in the passive voice. Some code samples seem like a brief sketch rather than a compelling example. Still other samples seem mostly boilerplate code that speeds up the page-turning but doesn't illuminate. And sometimes the text abruptly changes diction, for example from objective description to a "follow-along" coaching style. Some sentences sound like the author left them in as to-do reminders.

The result is a thick book that, for me, is sometimes tedious or exhausting to read. I think it would have been helpful to credit each author by chapter, if only to know when the presentation style might change so much. Also, a concerted effort at paring things down, and keeping the diction clear and active, throughout the text, would make it more readable and worth referencing.

This book might be handy if you just need many topics covered in one place.

Discuss book in the Saloon More info at Amazon.com




Groovy Recipes: Greasing the Wheels of Java
by Scott Davis


Pragmatic Bookshelf
1 edition
March 2008
250 pages

Reviewed by Michael Ernest, May 2008
  (8 of 10)


I got this book after hearing the author speak at JavaOne. His talk covers the content of the first chapter along with a few other items, but I didn't mind. It was quite helpful to read through the points and examples he made and try them out at my own pace.

The book is driven by a series of insights rather than complete, formal coverage. I found this approach very useful to getting started and experimenting. The writing is clear, light-hearted, and relaxed, especially in the beginning.

Towards the end of the book, the explanations wane a bit. The sample code is more often given without an introduction, beyond the section header. I was less sure what was going on in some of these cases, as I had gotten accustomed to picking things up very quickly in the beginning. The explanations that followed these code bits were good enough, but I missed that sense of the author's energy from beginning to end of each section.

I don't understand at all why it's called Groovy Recipes. There aren't any. The examples illustrate very well the power of this tool, but I didn't see anything that amounts to, say, the Groovy way to mine a web page, create an IM interface, read mail, etc. If you are looking for code you can apply immediately to some series of problems, this isn't the one.

Discuss book in the Saloon More info at Amazon.com




Java, A Beginner's Guide, 5th Edition
by Herbert Schildt


McGraw-Hill Osborne Media
5 edition
September 2011
656 pages

Reviewed by Jeanne Boyarsky, September 2011
  (9 of 10)



"Java A Beginner's Edition" takes you through the language of no Java knowledge to what you need to know to start learning about libraries. It covers the core language and can be used to learn Java 5, 6 or 7. The book assumes you are new to the C++ family so parts are slow going if you already know those parts. The author does point out what is different from C++ for those with that background.

I liked the mix of text, explained code and "try this" exercises. Each chapter ends with a self test to test your knowledge. The author does a good job not dumbing things down for the reader while making it easy to follow. It even covers recursion.

The author usually explains when he does something differently than one would in the real world. There were a few cases where he didn't - not using "com... in a package name", using get_pwr as a naming convention and using StringBuffer over StringBuilder (in this case the text was probably old.)

Overall, I liked this book better than the Deitel book for a programmer new to Java.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com




Java 7 New Features Cookbook
by Richard M. Reese, Jennifer L. Reese


Packt Publishing
edition
February 2012
384 pages

Reviewed by Jeanne Boyarsky, April 2012
  (9 of 10)



"Java 7 New Features Cookbook" is a quick way to learn what is new in Java 7. It assumes you know Java 6 and feel comfortable reading Java code which is a perfectly reasonable assumption.

Each recipe holds the same formal: why we do something, sample code, how it works and issues/gotchas/etc. It was fast moving and a learned a few things.

I liked how features were introduced as needed with a note on where more detail would be. I also liked the comments on when it is useful to use an API and what happens when you miss it.

While I found only one English typo and one code mis-tab, the braces were aligned weird consistently. Anytime there was a close brace, it was aligned all the way to the left. Making the code look like:
public void method() {
if ( a ) {
}
}

The only reason I didn't give the book a perfect score is the formatting. It is an excellent book.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com




Java Web Services: Up and Running
by Martin Kalin


O'Reilly Media
1 edition
February 2009
320 pages

Reviewed by Swati Soni, June 2012
  (8 of 10)



Java Web Services Up and Running is a very good reference book for leaning web services Concepts and developing Web services using Java programming language. For those who are newbies in WebServices, this book offers a complete understanding of SOAP and Restful Webservices.It explains Jax-WS broadly, so it is best for all those who want to learn the basics of writing, developing, deploying and consuming SOAP-based services in core java.

A prior knowledge of programming language Java and development of web components will help you understand the examples in a better way.I would highly recommend this book as a easy to read and implement book for Web-services using java.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com




Java SE 7 Programming Essentials
by Michael Ernest


Sybex
1 edition
November 2012
336 pages

Reviewed by Jeanne Boyarsky, November 2012
  (9 of 10)



"Java SE 7 Programming Essentials" stands apart from the other OCAJP certification books because it isn't a certification book. It is an intro to Java book that prepares you for the cert. The distinction is important. Most other cert books I've read assume you have some knowledge already. This book is more of a competitor of "Thinking in Java" and Deitel & Deitel. However if you read the book, do the exercises and answer the questions in each chapter, you will be well prepared for the cert so it is a cert book in that space.

It was cool seeing a mention of JavaRanch in the intro - a note not to private message the author there. Anyway, this is a book review so I should talk about the book.

Each page is in color which makes syntax highlighting a great feature of the book. There were lots of good diagrams such as the flow of control structures and sequence diagrams.

The book also includes best practices and opinions which are good for jumping in. For example, Michael explains doubles aren't good choices for real world objects. Which is a very important point. (I work for a bank.) However, he then implies you should adapt a primitive type for money rather than using BigDecimal. While I agree that is probably out of scope for an intro book, it still jumped out at me.

Overall, I find the book very easy to read and think it is a great book as your first Java book. I really like the remarks about making things easier for your future self through clear coding and documentation.

Disclosure: I received a copy of this book from the publisher in exchange for writing this review. Further, the author asked me about tech proofing this title. While that didn't happen, I feel the need to point out the missing line break in the table on page 47 and the word "sublclassing" on page 122 :). Seriously though, many books have a couple typos. If this is the worst I can find, it means the quality is good.

Discuss book in the Saloon More info at Amazon.com



Sybex
1 edition
November 2012
336 pages

Reviewed by Bear Bibeault, January 2013
  (9 of 10)



As someone who has been writing in Java for a decade and a half, I find Michael Ernest's Java SE 7 Programming Essentials an excellent introduction and resource for not only Java, but for any aspiring programmer.

But before discussing the content of the book, let me say a few words about the binding of the book itself: it's wonderful. The pages are thicker than average for a softbound book, sport a pleasing eggshell finish, and the entire book is in full color. All technical books should be bound so handsomely. As an author myself, I'm rather jealous.

Those of you ordering the e-book will miss out on this; but not to worry, the content of the book matches its physical polish.

I've often likened computer programming to chess. Anyone can learn the moves, but sitting in front of a chess board and making random moves could hardly be considered "playing chess". Without a strategy to those moves, there's no game. But when it comes to books on programming, whether it be Java or any other computer language, all too often books emphasize the "moves" without touching upon the strategies that elevate computer code from a random mess of statements to an elegant and cohesive program.

In Java SE 7 Programming Essentials, Michael Ernest not only describes the "moves" of Java -- and in a very logical order for someone not familiar with Java or even programming -- but emphasizes thinking from the offset about the strategies that make software successful. That's rather unusual for a book targeted at the more novice audiences, and an approach that is handled well. It'd be easy to confuse the reader, obscuring the point of the concept being presented with such an approach, but the author deftly manages to avoid clouding the point while presenting "strategy" along with the "moves".

This book also avoids another trap I've seen in books that prepare one for a certification. Frequently such books "teach to the test"; preparing the reader to take the certification exam, but only that. In such books, important concepts are glossed over, or even omitted, if they aren't germaine to the test. Java SE 7 Programming Essentials avoids this pitfall. It's a good first book on Java regardless of whether one is interested in the OCAJP certification or not.

If you are interested in learning how to program Java, rather than merely write Java, this is a book I can recommend.

Discuss book in the Saloon More info at Amazon.com




Core Java vol I-Fundamentals
by Cay S Horstmann, Gary Cornell


Prentice-Hall
9 edition
2013
974 pages

Reviewed by Campbell Ritchie, March 2013
  (8 of 10)



I was pleased to have a copy of this book to review. It is by no means a beginners' book, moving at a fast pace, and often referring to later chapters or VolII, and using a rather "compressed" form of code in its examples. Users of previous editions will recognise the writing style, updated seamlessly so one cannot see the join between "old" and "new". Unlike in some books, there is no "project" running through it, nor end-of-chapter exercises. Again reflection appears unusually early position in this book. It has ~220 more pages than my 2005 edition, but part of that increase comes from moving the threading chapter into VolI.
It is an object-oriented book, but assumes readers already know what objects are. It describes aliases, returning mutable references and pass-by-value. Also warnings about potential security hazards and pitfalls.
Much of the book consists of a detailed description of different features of the platform. It has probably the clearest description of Java generics I have seen. The threading chapter is also up to date, with Locks before synchronized.
This book takes it for granted than the reader already know the working of data structures, Singletons, Immutable classes or invariants, so they are not described. Many differences from C++ are mentioned; although many C++ programmers already know Java, those are potential points of confusion. These differences are less relevant to people who come straight to Java.
I disagree with a few things: throwing an unchecked Exception to enable an overridden method to compile, Scanner#nextLine reads the next line.
One thing I was disappointed by: the book has only few references.
A good resource to get you up to speed in Java. When VolII comes out it will probably also be a very comprehensive resource.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com




Java 8: Lambda Expressions and Streams
by Marty Hall


Addison-Wesley Professional
edition

pages

Reviewed by Bill Gorder, January 2014
  (6 of 10)



What I didn't like:
- I expected more interaction maybe some labs or exercises
- Video segments were a little too long to easily stop and start
- A lot of repetition throughout the second lesson
- I did not care for the narrated slide show format. I would have liked to see a format that capitalized more on this being a video.

What I liked:
-The examples clearly expressed the concept being taught.
-Additional detail on how things worked was provided rather than just focusing on syntax
-This was my first experience with the new Java features like lambdas, functional interfaces, method references and the function package. I feel after having watched this video and practiced a bit, that I have a good understanding of the topics.

Marty Hall is an experienced trainer and accomplished author. He does a good job covering the topics, and he is certainly first to the market with this course. Given a person knows what to expect going in (this is a narrated slide presentation), I could recommend this course to those wanting an early look at the new Java 8 features if it were not for the price point. This course is listed at $199.00 (although currently I can get it for $100). Both of these prices exceed the value received from the course in my opinion. A book can be purchased at under half the discounted rate, and nothing about the course capitalized on video in a way that made it advantageous over written literature. I would suggest instead to hold off until some of the books currently being written become available. You could also take advantage of one of the early access programs offered by most publishers. If you don't mind the work you can also get a taste from the free tutorials, and blogs scattered about, although no single one of these will cover all the things in this course. If you are impatient and have the extra money to burn, then this course is good from a technical coverage perspective. It covers all the points outlined in the course description and is easy to follow and listen to.

If the price were made more competitive, or some extra value was added to justify the cost difference from the upcoming written literature, I would add a couple horseshoes and change my recommendation.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

More info at Amazon.com




Professional Oracle 8i Application programming with Java
by John Carnell, et al


Wrox
1 edition
December 2000
1275 pages

Reviewed by Thomas Paul, June 2001
  (9 of 10)


To produce this book, Wrox took twenty expert Oracle developers and had each of them write about their area of expertise. The result is that whether you are a manager, a developer, or a DBA, if you are working with Oracle 8i this book should be on your desk. This book covers virtually every topic that you need to understand about the Oracle 8i development platform. It does not cover each topic completely but it provides a thorough and in most cases sufficient introduction on each topic. For a particular topic of interest you may need an additional book but to get all the information found in this book you would need ten volumes at least. The book opens with an introduction to Oracle 8i and some of its components including Net8 (Oracle's network solution) and Designer 6i (Oracle's development environment). The next section covers PL/SQL and PSP (this is similar to JSP). This is followed by an extensive section covering Java. This section covers JDBC, SQLJ, EJB, and interMedia (Oracle's powerful search tool). The last section covers XML and includes information on DOM and SAX parsers, SOAP, XSL, XSQL, and more. Extensive case studies are scattered throughout the book. Examples show how to use Oracle tools such as BC4J to develop enterprise applications. The book even includes primers on Java and XML. As a tour of all the features of Oracle 8i, this book is without competition.

Discuss book in the Saloon More info at Amazon.com




The Complete Java 2 Certification Study Guide
by Philip Heller, Simon Roberts, Michael Ernest, Philip Heller, Simon Roberts,


Sybex
third edition
July 2002
816 pages

Reviewed by Dan Schlueter, January 2003
  (7 of 10)


I will keep this short since the book is basically identical to previous editions. I was able to pass the exam only using this book although I have a few major complaints. First, chapter nine(I/O) is not even on the exam anymore but was left in the book. The practice test has 50 questions instead of 61 the questions on the real test. To make matters worse some of the questions aren't even about valid exam objectives. My final gripe is that the questions at the end of each chapter are pathetically easy compared to the final exam in the book. This edition looks at though it were rushed out because of the new exam. That being said, the items that did not change were fairly well covered and provided a good review for an intermediate java programmer.

Discuss book in the Saloon More info at Amazon.com



Sybex
second edition
September 2000
899 pages

Reviewed by John Ternlund, June 2001
  (8 of 10)


If you are trying to increase your core Java knowledge or you are studying for your Programmer's or Developer's Java 2 certification exams, the Complete Java 2 Certification Study Guide is a book packed with useful Java2 language details. This revised second edition version comes with some added chapters covering the Developer's exam, more exam questions, and a CD-ROM which contains the entire book in digital format. The first half of the book is a thorough study guide which covers Programmer's Exam information. This part of the book digs right into the language fundamentals and presents Java syntax and semantics. The sample questions at the end of each chapter usually do a good job quizzing you on what you just read. The sections on Threads, Layout Managers, Components and I/O are well written. The second half of the book covers the Developer's Exam. Because the Developer's Exam is practical rather than objective, the second half of the book looks more at doing programming assignments. Basic examples of a room reservation system and a trouble ticket system are presented and discussed. I did find several errors while reading the book but there is a good errata website at www.sybex.com. If you pick up this book be sure and check out this site.

Discuss book in the Saloon More info at Amazon.com



Sybex
1 edition
September 2000
899 pages

Reviewed by Paul Wheaton, January 2000
  (10 of 10)


Reviews of 1st edition. 2nd Edition reviews coming soon.
I based 75% of my prep time for the Java certification exam on this book. After all, one of the authors wrote the exam! I scored a 97% on the exam. Need I say more? :)

Discuss book in the Saloon More info at Amazon.com



Sybex
1 edition
September 2000
899 pages

Reviewed by Kathy Sierra, May 1999



Kathy Sierra's comment: Don't even THINK about trying to pass the SCJP without studying this book and taking the example tests.

Discuss book in the Saloon More info at Amazon.com




Mike Meyers' Java 2 Certification Passport
by Cindy Glass, Jane Griscti, Margarita Isayeva, Ajith Kallambella, and Kathy Sierra


McGraw-Hill
unknown edition
October 2001
450 pages

Reviewed by Marilyn de Queiroz, November 2001
  (7 of 10)


The book combines easy readability with a condensed format. It has a casual, friendly style. I liked the organization of the book including its exam tips and links to more information.

The individual chapters in this book are a good resource for individual topics covered on the SCJP2 exam, but it suffers from lack of cohesiveness. Some chapters cover topics in detail while other chapters limit discussion specifically to what is covered on the exam. Some chapters repeat some information that is contained in other chapters, which is good if you are only reading that chapter. The repetition also helps to solidify the concept when you are reading the book straight through. Some chapters contain a lot of code demonstrating the concepts, while others contain very little code. However, individually all the chapters were very clear in their presentation of the subject at hand. And seeing the organization of the authors' thoughts helped clarify many of the concepts that previously had seemed opaque after reading other exam prep books.

The index was not very useful when I used it to try to find a section I knew I had read but couldn't remember where it was in the book.

The book comes with a CD containing a couple of mock exams. You must install it to take the exam, and it has a few bugs (missing words in the explanations).

On the whole I found this book to be detailed, complete, compact, accurate, and useful.

Discuss book in the Saloon More info at Amazon.com




Java 2 Exam Prep, 2nd Edition
by Bill Brogden, Marcus Green


Coriolis Group Books
second edition
July 2001
640 pages

Reviewed by Matthew Phillips, November 2001
  (7 of 10)


If you are an experienced OO programmer that looking for an overview of java or someone looking for another resource for certification, then this book may be for you.

Each chapter uses the K.I.S.S. approach to the topics making this book easy to read and even easier to understand. The review questions are good and the real world examples section provides good reinforcement for each topic.

This book is not without problems, however. The book never really goes into detail on reference casting/conversion. I also found the coverage of Exceptions to be incomplete. The practice test on the CD also has the problem of using a single-quote to create string literals instead of a double quote. This can certainly lead to confusion.

Overall, I think this is a nice book for certification, but it should not be your only resource.

Discuss book in the Saloon More info at Amazon.com




The Essence of Object-Oriented Programming with Java [tm] and UML
by Bruce E. Wampler


Addison-Wesley Professional
unknown edition
January 2002
320 pages

Reviewed by David Vick, March 2002
  (7 of 10)


This is a very basic and introductory book into some of the principles of object oriented programming with a nod to the Java language.

The intended audience is for semi-experienced Java programmers or programmers experienced in other languages who want an introduction to object oriented programming. If you are familiar with Java you can safely skip chapter 3. In trying to cater to other languages the book can be misleading in respect to Java. If you are coming from another language, you can just skim that chapter to pick up the basics but they are not fundamental to the rest of the book.

Over all the book is a quick, down and dirty, intro to some of the principles of OO analysis and design. At only 266 pages of actual text, it does not have the space needed to go into depth or to even give many examples. The author does do a good job of explaining the basics of UML and the notations used in different UML diagrams.

As an introductory text this book is sufficient, but if you are looking to learn more in depth you will need another book with more examples and a more detailed discussion of the various topics.

If all you are looking for is the basics or a good start into the subject then this would be a good book to start with. It will give you a solid foundation on which to build your knowledge of OO analysis and design.

Discuss book in the Saloon More info at Amazon.com




Database Programming with JDBC and Java, 2nd Edition
by George Reese


O'Reilly
second edition
January 2000
328 pages

Reviewed by Marilyn de Queiroz, August 2001
  (9 of 10)


George Reese did an excellent job of providing a quick overview of the technologies and concepts require for developing an Enterprise System, beginning with the requirements for a true Enterprise System. The database is the heart of any enterprise system and Java provides strong, reliable database connectivity. He also covers basic SQL, intro to JDBC including its structure, alternatives, creating a connection, and basic database access. He then turns to more advanced JDBC including prepared statements,batch processing, rowsets, distributed transactions, and more.

In the second section, Applied JDBC, he covers topics such as JNDI, RMI, serialization, EJBs, system architecture (two-tier and three-tier), design patterns, distributed components, security, transaction handling, and other topics more peripherally related to JDBC, but necessary for developing an enterprise system. He also walks through an example distributed database application.

The final section of the book presents the JDBC Core API and the JDBC Optional Package as reference material.

The author's style of writing seemed very readable, clear and concise.

In summary, this 300-page book is a great introduction for those who want to approach Java distributed applications by way of database work as it discusses JDBC in the context of enterprise systems.

Discuss book in the Saloon More info at Amazon.com




Building Scalable and High-Performance Java Web Applications
by Greg Barish


Addison-Wesley Professional
unknown edition
December 2001
416 pages

Reviewed by Thomas Paul, March 2002
  (8 of 10)


This book takes an interesting approach to using J2EE technology. Rather than concentrating on a single aspect (servlets, JSPs, etc) or spending hundreds of pages explaining all technologies in detail, the author has chosen to lightly cover all the important aspects. In a sense, this book is an "executive summary" of J2EE. The readers who would probably get the most from this book are architects who need to understand J2EE but don't need to write much code and developers who are unfamiliar with J2EE and need an introduction to the technologies. This is especially helpful to developers who have completed the Java Programmer Certification but are unfamiliar with server-side development. There are two things that make this book unique and especially valuable to those new to server side development. First, the book covers the complete end-to-end solution. The author spends several chapters explaining the architecture of web applications. All the basics of server side development are discussed (JSP, Servlets, EJBs, JMS, JDBC) but the author also covers other important issues such as the HTTP protocol, web services, database design, and SQL. Second, the author explains which issues are likely to have an impact on the scalability and performance of your web applications. The entire book is under 400 pages and is very readable. Code samples are interspersed throughout the book to help explain the topics. If you are new to J2EE and are looking for a well written introduction then this book is very good choice.

Discuss book in the Saloon More info at Amazon.com




Special Edition Using Java 2 Enterprise Edition
by Mark Wutka


Que
1 edition
May 2001
1088 pages

Reviewed by David Vick, December 2001
  (8 of 10)


This book thoroughly covers the Java 2 Enterprise Edition. For those that need to learn about a specific topic each chapter in itself can almost stand-alone and be read independently of the others or with minimal reference to other chapters in the book. The first part of the book gives a brief introduction to enterprise application development to put the reader in the right frame of mind. Along with a down and dirty SQL primer to make the JDBC section more meaningful. There are plenty of code examples throughout the book that further clarify the text and give more substantial examples of the topic being discussed. Some of the explanations seemed to cover some of the less used classes/methods in a little more detail than was warranted whereas a more thorough coverage of the basics would have been better served.

The CD includes all of the full-length programs from the book as well as a collection of evaluation software from various companies.

The stated audience is right on target too, if you have no prior Java experience this book isn't for you, but for those looking to reach the next level and gain some knowledge of enterprise development then this is a good starting point. All in all this is a very good book and if not so big would make a handy reference.

Discuss book in the Saloon More info at Amazon.com




Professional Java Server Programming, J2EE 1.3 Edition
by Subrahmanyam Allaramaju, Cedric Buest, Marc Wilcox, Sameer Tyagi, Rod Johnson, Gary Watson, Alan Williamson, John Davies, Ramesh Nagappan, Andy Longshaw, P. G.Sarang, Tyler Jewell, Alex Toussaint


Wrox
1 edition
September 2001
1300 pages

Reviewed by Peter den Haan, December 2001
  (8 of 10)


Professional Java Server Programming, J2EE 1.3 Edition, updates the older J2EE 1.2 edition of the same book. A few chapters have been added, a few have gone, and a lot of details have changed, but the seams between the old material and the new generally don't show.

The book is huge! Between its 1250 pages and 13 authors, it covers every important J2EE API, from JDBC to Connectors and Web services. It also discusses architecture, packaging and design patterns. You can start out with little more than some solid (J2SE) Java knowledge; it will be hard work, but by the time you've worked your way through, you will have a comprehensive knowledge of the J2EE platform.

There are disadvantages. This is not a book that takes you from cover to cover with a seamless development of material. There is some overlap between the chapters. The core J2EE topics (Servlets, JSPs and tags, EJBs) are discussed in a depth, with lots of code examples that can occasionally be too detailed for my taste, but many others (e.g. JNDI, JDBC, Connectors) barely scratch the surface and remain a bit theoretical. Ideally architectural and design considerations would have gotten a bit more, and more consistent, coverage throughout the book.

This will not be the only J2EE book you own; you will want the specifications, something with a stronger design focus such as Core J2EE Patterns, and maybe some specialised books. But it is an excellent place to start.

Discuss book in the Saloon More info at Amazon.com




Java Enterprise CD Bookshelf: Version 1.0
by David Flanagan, Jim Farley,William Crawford


O'Reilly
1 edition
September 2000
622 pages

Reviewed by John Ternlund, July 2001
  (8 of 10)


One of the best things about the Java Enterprise CD Bookshelf from O'Reilly is the search feature for this collection of seven Java Enterprise books that I find myself looking through time after time. It's nice to have both electronic and print versions of books and this collection provides some good electronic Java Enterprise books on CD-ROM in HTML format. After arrival of the CD Bookshelf, I was able to jump into my favorite web browser and start reading the books right off the CD (no installation required). I was also able to search for text not only in the book I was viewing but all the books in the collection at once. The applet based search feature allows (AND/OR) operations and helps make this electronic "bookshelf" an excellent on-line guide for a Java Enterprise developer. In addition to the electronic books, this collection also comes with a print copy of Java Enterprise In A Nutshell: A Desktop Quick Reference. Unfortunately this printed book was written before Sun announced J2EE. However, the text still covers the useful basics of JDBC, RMI, JNDI, EJB and Servlets. Lastly, although this collection contains Java in a Nutshell (Third Edition), I don't consider this the best introductory book to Java. For this series, it is useful if you are already pretty familiar with Java. Overall, a good Java Enterprise developer on-line reference set.

Discuss book in the Saloon More info at Amazon.com




Java Developers Guide to E-Commerce with XML and JSP
by Bill Brogden and Chris Minnick


Sybex
unknown edition
January 2001
512 pages

Reviewed by Frank Carver, June 2001
  (8 of 10)


This book is unrelentingly practical. This is both its main advantage and its biggest drawback.
The book describes, in great detail, how to build and set up an XML-driven e-commerce web site using a single case study. Each of the concepts covered (XML, DTD, Catalog, Shopping Cart, Look and Feel, Surveys, Payment Processing, News feeds etc.) gets a few pages of introduction and a chapter of annotated code. The advantage of this approach is that the reader is never left with hanging questions about just how to implement something - every bracket and semicolon is there.
The disadvantage is that hardly any coverage is given to alternative approaches. EJB and XSLT get a few pages, HTML templating gets just one line! The code examples are solid, but seem a little "old fashioned"; there's no use of the Collections API, JDOM or XSLT, for example. Don't let any of this discourage you though - consider these points as options for further study. The code is all on the supplied CD, and you are free to tinker with it.
If you are a programmer and unsure what all the e-commerce handwaving really means, or you need to produce a basic e-commerce system in a hurry, you need this book.

Discuss book in the Saloon More info at Amazon.com




Inside Servlets: Server-Side Programming for the Java
by Dustin R. Callaway


Addison-Wesley Professional
second edition
May 2001
912 pages

Reviewed by Ajith Kallambella, June 2001
  (7 of 10)


A great book for novice web developers, Inside Servlets( 2nd Edition ) is a well written Servlet development guide. As the publisher's web site says, it is an excellent resource for "programmers and consultants who desire to learn Web development fundamentals in addition to server-side Java programming. Much of this audience likely consists of current client/server programmers." The chapters are categorized into three major sections - Introduction to Web development, Introduction to Servlets and Advanced Servlet concepts. There is a great deal of academic material in the introductory chapters - pages of information about HTML, Brief History of the Web, Web Servers, Web browsers, Networking, Ports, Sockets, Firewalls etc that may be too much of a digression for a not-so-newbie programmer. The very first Servlet program appears only after Chapter 4. I found the fat appendix containing Servlet API documentation - one that is freely available on the web - completely unnecessary. The section on Advanced Servlet Concepts completely ignores to mention latest developments in Servlet technology - integration with XML and Servlet based frameworks such as ECS and Cocoon. Overall, it is a book for beginners, not for professional Servlet developers.

Discuss book in the Saloon More info at Amazon.com




JMX: Managing J2EE with Java Management Extensions
by Juha Lindfors, Marc Fleury, The JBoss Group


Sams
1 edition
January 2002
408 pages

Reviewed by Kyle Brown, August 2002
  (4 of 10)


My main problem with this book can be summed up on one word -- code. This book is very code-oriented, to the exclusion of all else. For instance, the very first chapter shows code on the 3rd page, and by the 10th, you're into a full-blown example. But you never learn WHY you want to do the example. That's continued throughout the book. They cover the mechanics of JMX in depth, but never tell you the reasons why you should care about any of it.

As an example, there is a case study that discusses how JMX is used in the JBoss EJB server. It's the very last chapter, long after most readers have lost interest. Do they tell you why they chose JMX? What advantage it gives JBoss? No -- instead they give you 5 pages of XML metadata.

What's more a lot of the code is of the "do-nothing" variety. We don't need to see how to implement unused methods of an interface 10 times. IMHO, you should give this book a pass. Hopefully one of the other books on JMX will give you a better understanding of the architecture, and why you should care...

Discuss book in the Saloon More info at Amazon.com




Developing Java Enterprise Applications, 2nd Edition
by Stephen Asbury, Scott Weiner


Wiley
second edition
May 2001
896 pages

Reviewed by Madhav Lakkapragada, November 2001
  (4 of 10)


This book attempts to cover a lot of ground and it does cover the whole breadth of J2EE and more. However, somewhere along the line, it seems like that the authors were pretty busy writing but never seem to have reviewed or even proof-read the technical content.

Personally I cannot accept refering to variables as "x" in the code and "X" in your explanation of the program. As a developer, I assume you are referring to different variables here. Yeah, yeah I know Microsoft Word does that...but nah I wouldn't go there. And the two words "right" and "write" (read the authors website) in English (at least the one I know) have different meanings.

Anyways, there are some good topics that I liked especially RMI. The book does explain snippets of code, while the bulk of the source code is on the CD-ROM which is handy. I think the authors could do a lot better and I definitely was expecting more. I don't mind having this book for a secondary reference but I wouldn't add this to the list of essential books on my shelf. For the same money I think there are better books on the market.

Discuss book in the Saloon More info at Amazon.com




Java 2: The Complete Reference, 4th Edition
by Patrick Naughton, Herbert Schildt


Osborne Publishing
third edition
March 1999
1108 pages

Reviewed by Carol Murphy, November 2001
  (8 of 10)


This nice, fat volume is much more than a reference book. It's packed with example code, clear definitions of the fundamental language elements, and lots of side notes to fill in those "Why the heck do they do it like that?" moments. Half of the book is devoted to the Java Library, which I find really convenient. (I know this stuff is available online, but I love to have a book at my fingertips.)

Updated to cover the JDK 1.3, software development using JavaBeans and Swing is in there. There's also a chapter given to making the pilgrimage from C++ to Java. No exercises for the beginner, but there are 4 programs laid out with source code and development process at the end of the book showing how things can be done. One of these is a multiplayer, networked, client/server game. Well-indexed information right there whenever you need it! Worth checking out.

Discuss book in the Saloon More info at Amazon.com




Digital Image Processing: A Practical Introduction Using Java
by Nick Efford


Addison-Wesley
unknown edition
May 2000
340 pages

Reviewed by Sean MacLean, June 2001
  (8 of 10)


Efford's "Digital Image Processing" stands out as an excellent introduction to the topic. On reading the first few pages one is immediately struck by the book's thoughtful layout. The table of contents is as detailed as many indices that I have seen and is supported by a list of figures, tables, algorithms and program listings in the formal style of academic publications. Likewise, as you make your way through the chapters (each complete with "further reading" sections and accompanying exercises), you can't help but be impressed by the care with which the book has been organized. To top things off, the accompanying CD contains lots of supporting source code and fully functioning applications. The topics addressed in the book's 12 chapters covered almost every basic image processing technique that I am deeply familiar with and I was, for the most part, very comfortable with Efford's treatment of the material. Any complaints are minor. I would have liked a quick example of the ImageFilter class and a bit more on color histograms. The discussion on Fourier Theory, though very clear, could have been bumped up to excellent had Efford given a bit more weight to the transform optimizations. All in all, Efford has written an excellent book on the fundamentals of DIP that could easily serve as an undergraduate text. Within the first few chapters, I was already mentally removing several signal processing books from my book self to make room for this new found gem.

Discuss book in the Saloon More info at Amazon.com




Programming and Deploying Java Mobile Agents with Aglets
by Danny B. Lange, Mitsuru Oshima


Addison-Wesley Professional
1 edition
August 1998
256 pages

Reviewed by Paul Wheaton, January 2000
  (5 of 10)


I won this book at the Java Software Summit in November of 1998. I think this is the core of JNI and may have a big future. I haven't developed anything along those lines. I keep hoping a manager will see the book on my shelf, ask about it, get an idea, and tell me to spend a few weeks making something using it. Until then, the book goes mostly unread.

Discuss book in the Saloon More info at Amazon.com




Early Adopter JXTA: Peer to Peer Computing with Java
by Sung Li


Peer Information
1 edition
December 2001
200 pages

Reviewed by Kyle Brown, February 2002
  (4 of 10)


While I was excited when I received this book, my excitement did not last through the ordeal of reading it

The book begins slowly by covering why Peer-to-Peer (P2P) is important. However, it then quickly moves from basic to very advanced topics without enough intermediate steps. Chapters 2 & 3 provide a detailed overview of the JXTA technology, without any guidance as to how to use it to build P2P systems. The author doesn't "ground" the reader in the topics they've seen before moving on to other detailed issues.

The book improves later, though. Chapter 4 has some interesting peer-to-peer patterns (which would have been better earlier) but they end far too soon. Also, there are no code examples for the patterns. There is a case study in the book - unfortunately in the penultimate chapter, too late to clarify the earlier issues. What's more, the example wastes too much time on covering unnecessary Swing GUI code.

However, it was the book's editing and composition that disturbed me the most. For instance, this book doesn't include an index - something absolutely unforgivable! Also, the editing of the book was terrible - grammar errors abound. It made me wonder if the book had been proofread before going to press.

So I would not recommend this book. Instead, I felt I learned more about JXTA by reading the white papers and documentation on the JXTA web site (www.jxta.org).

Discuss book in the Saloon More info at Amazon.com




Data Structure & Problem Solving using JAVA
by Mark Allen Weiss


Addison-Wesley
second edition
August 2001
928 pages

Reviewed by Peter Tran, May 2002
  (7 of 10)


It's amazing how many people who develop software for a living and have no concept of data structures. More often than not, these developers will either write unmaintainable code or fall into the write everything from scratch syndrome resulting in very inefficient and buggy code. Anyone who is serious about becoming a professional developer should learn the fundamental data structure such as link list, hash map, trees, etc. The prior incarnation of this book was written in C, C++, Ada, and JAVA (1st ed.). The 2nd edition builds on Mark's experience with this subject and does a commendable job of referencing the JAVA Collections classes where appropriate. Data structure is only one step above automata and formal language analysis in dry subject matter, but nevertheless, it's just as important. For most people, the subject matter isn't consider a pleasant night reading, but the next time you apply for a job and the interviewer asks you to describe how a hash map is implemented in JAVA, you can confidently answer the question. Personally, I think everyone should be familiar with data structure and Mark A. Weiss's book is as good a book as any on the subject matter.

Discuss book in the Saloon More info at Amazon.com




Beginning Java 2 SDK 1.4 Edition
by Ivor Horton


Wrox
unknown edition
March 2002
1100 pages

Reviewed by Thomas Paul, April 2001
  (9 of 10)


Ivor Horton has once again produced an exceptional beginner's book for Java. I have reviewed many beginner books on Java in the search for a textbook for an "Introduction to Java" class that I teach at Hofstra University. Few of these books have met the goal of providing a solid ase of knowledge upon which a programmer can build. Ivor Horton's "Beginning Java" is one of those few. This book is an excellent introduction to Java for anyone who has a basic understanding of programming and is willing to apply some effort to learn the language. Horton proceeds at a rapid pace to cover virtually every important topic in Java outside of the Enterprise Edition. Starting with the basics of the Java language Horton explains the Java syntax in great detail. He then goes on to cover exceptions, streams, utility classes, threads, GUI (with a concentration on Swing), and file processing. In addition, Horton covers all the important new features of the 1.4 release including more than 100 pages on XML. Each chapter builds upon the previous chapter using extensive, well designed and clearly explained examples. Although the book covers a wide range of topics, it does not treat any of them lightly. Many introductory books fall short in the very important topic of object oriented technique. Horton does an excellent job of both explaining OO and then using it in his many examples. Unlike other books that you may read and discard, this is a book that will continue to provide help far into your Java career.

More info at Amazon.com




Beginning Java Objects: From Concepts to Code
by Jacquie Barker


Wrox
1 edition
November 2000
665 pages

Reviewed by Jane Griscti, May 2001
  (5 of 10)


My first reading of this book left me dazed and confused; then I read the reviews on Amazon, which were good, and decided to give it another try; with the same result! The book takes you through the design and development process for a Student Registration System while describing various Java language and OOP concepts along the way. It is well written and Ms. Barker knows what she's doing and where she's going but herein lies the problem. As the reader, I felt like a daytripper on a bus tour with Ms. Barker acting as the sight-seeing guide. If you're looking for an example case study and are curious as to how someone else builds an application; this book is for you. If you want to learn Java or you want to learn OOP, start somewhere else.

Discuss book in the Saloon More info at Amazon.com




Definitive Guide to Swing for Java 2, Second Edition
by John Zuklowski


Apress
second edition
January 2000
890 pages

Reviewed by Madhav Lakkapragada, June 2001
  (8 of 10)


This book gives a very exhaustive analysis of various Swing components with explanations of most classes used. The author describes the various LnF for each component. In my view this book does a very detailed analysis of the components, their drawbacks and workarounds. The author also depicts the use of components with appropriate examples and illustrates the components in the three most common LnF's. Available properties and their use for each component can be found very useful. Each class description includes an elaborate explanation of the various Constructors, Properties, Listeners where applicable and the appropriate Data Models with UML diagrams. The chapters also provide some explanation on how additional Data Model customization and/or the LnF customization can be achieved. As the chapters progress, the author also identifies the differences between the Swing component and its equivalent AWT component.The side notes and tips highlight some of the drawbacks with appropriate workarounds. Also included are some future-looking statements about new behavior as applicable in Swing 1.3. The new additions in Swing 1.3 are detailed in the Appendix. I would be lying if I don't mention that there are some typos in the book. Overall I think this is a very good resource on Swing.

Discuss book in the Saloon More info at Amazon.com




Building Java Enterprise Applications, Vol. 1: Architecture
by Brett McLaughlin


O'Reilly
1 edition
March 2002
318 pages

Reviewed by Junilu Lacar, September 2002
  (5 of 10)


This is the first of three volumes that will cover the entire process of building Enterprise applications with Java(tm) technology. This volume on architecture discusses the database, persistence and business layers. I have mixed feelings about this book. I like that the author makes a point to give reasons for making each design decision. But I think that he could have balanced the discussion better by citing more pros for the design options that he didn't go with. There is good coverage of accessing LDAP services with Java. However, discussion about other architectural issues apart from managing users and permissions are brief at best. After giving an overview of the sample application to be built, the first hundred pages covers detailed database design (which I thought was unusual for a Java book on architecture), LDAP setup and a few select EJBs. The last hundred pages, a good third of the book, is comprised of code listings and platform-specific instructions to get the sample application to work. This leaves the remaining hundred or so pages in the middle for discussion of Java code to access directory services and manage users and permissions and, briefly, message-driven beans. Other shorter discussions that you might find useful are EJB adapter classes and schemes for generating EJB primary keys. Apart from this, you will probably find this book a little disappointing. Hopefully, the next two volumes will pick up the slack.

Discuss book in the Saloon More info at Amazon.com




Mastering XMI: Java Programming with XMI, XML, and UML
by Timothy J. Grose, Gary C. Doney, Stephen A. Brodsky


Wiley
unknown edition
April 2002
480 pages

Reviewed by Valentin Crettaz, September 2002
  (8 of 10)


This book shows the benefits of using an XML-based standard called the XML Metadata Interchange (XMI). It presents XMI 2.0 as an elegant facility for integrating different heterogeneous systems. One chapter is dedicated to showing how the IBM WebSphere Studio application makes a real-world use of XMI (trial version on the CD-ROM). All Java examples of the book, as well as the XMI Framework, a high-level API for manipulating XMI files, can be found on the CD-ROM. The authors assume that no previous knowledge of XMI, XML, or UML is required. Thus, the first part of the book explains all the necessary XML and UML concepts and goes on with presenting XMI concepts in details. The second part presents different ways of using XMI. The authors show different algorithms for reverse engineering UML models from XML documents. They also explain how to manipulate simple and complex XMI documents with the standard DOM and SAX XML APIs, as well as with the XMI Framework and the Java Object Bridge (JOB). A special attention is given to XMI schemas that enable powerful validation of XMI documents. It is also shown what role XMI plays in the new Object Management Group's (OMG) software development approach, the Model Driven Architecture (MDA). This book is an accurate and well written resource that contains simple and clearly explained examples. I would recommend it to any Java software developer who is willing to start or is already using XMI.

Discuss book in the Saloon More info at Amazon.com




Mr. Bunny's Big Cup o' Java(TM)
by Carlton Egremont III


Addison-Wesley Professional
1 edition
June 1999
115 pages

Reviewed by Dave Landers, September 2002
  (9 of 10)


This book is the story of Farmer Jake's quest to learn Java from his mentor, Mr. Bunny. The book starts at the beginning. This is about the last thing it has in common with other Java books (until it gets to the end).

Farmer Jake and Mr. Bunny are sucked into the computer, tokenized, put in a jar, and find themselves facing the Java Class Verifier (in the person of Telly the Bridge Troll). After passing inspection, they go on to meet Inky (a Squid-based implementation of the Java Virtual Machine). Along the way they meet many other characters that teach them about Primitives, Applets, Classes, Objects, Inheritance, the Garbage Collection, Interfaces, and even the Java Native Interface.

So much packed into one short book! Even the copyright notice is worth reading. This is an entertaining book, appropriate for readers with any level of Java experience, although greenhorns may not get all the jokes (yet). Most of the allegories and examples are reasonably accurate, technically. The explanation of threads and thread scheduling is particularly good.

If you can only buy one Java book this year, this probably shouldn't be it. But if you can scrape up some extra change from between the cushions of the couch, this would be a great way to spend it.

Discuss book in the Saloon More info at Amazon.com




Algorithms in Java, Parts 1-4 (Third Edition)
by Robert Sedgewick, Michael Schidlowsky


Addison-Wesley Professional
third edition
August 2002
768 pages

Reviewed by Matthew Phillips, September 2002
  (7 of 10)


This book is volume one of a three part series. It covers fundamentals, data structures, sorting, and searching. This book is very detailed with good examples and well-placed exercises to reinforce the knowledge. The author does a very good job of avoiding unnecessary mathematical explanations. I spent two weeks reading this book, but to get a firm grasp of the subject matter expect to spend a lot more time.
I did find a few things that I did not like about this book. My biggest complaint is that answers are not provided to the exercises. No benefit is derived from doing it wrong and thinking you are doing it right. I also think that the examples would be much improved if the property and method names better described their purpose. Variable names like M and l are common in the example code and leave the reader with a little bit of extra work to do in understanding the code.
Overall, the positives outweigh the negatives in my opinion and make this a worthwhile book for any new Java programmer looking to take that next step.

Discuss book in the Saloon More info at Amazon.com




The Sun Certified Java Developer Exam with J2SE 1.4
by Mehran Habibi, Jeremy Patterson, Terry Camerlengo


Apress
1 edition
August 2002
364 pages

Reviewed by Mark Spritzler, March 2003
  (8 of 10)


I got to read SCJD Exam book after passing the SJCD with a 151/155. So I know what is on the assignment and essay exam.

Of all the SCJD books that I have read, this book comes closest to presenting an application that resembles the actual assignment and without giving away the goodies.

You will find that you will not only learn everything you need to pass the SJCD, but you will also learn all the new features of Java SDK version 1.4. You'll learn about the New IO, Regex, Assertions, and Logging.

It will go over all the considerations that you must make for the SCJD assignment including Design decisions, Coding Standards and RMI vs Sockets. All very important parts of the SCJD.

If I could only say one thing negative, It would be that I feel a couple, very small couple of issues where handled with more complexity than was needed. But, that is just my opinion. :)

Overall I would say that this is the best book to buy if you want a book for the SCJD Assignment.

Discuss book in the Saloon More info at Amazon.com




Algorithms in Java Part 5 Graph Algorithms
by Robert Sedgewick


Addison-Wesley Professional
third edition
July 2003
528 pages

Reviewed by Gregg Bolinger, October 2003
  (10 of 10)


Robert Sedgewick continues his discussion on algorithms in java with the second book of his Algorithms in Java series. Graph algorithms is Part 5.

My favorite aspect of this book is the fact that Robert talks about algorithms in a very generic sense. As algorithms should be discussed. But then he shows me how to use and construct these algorithms using a language that I am familiar with; Java.

Robert wastes no time jumping right into the topic of discussion. And from cover to cover there are code samples, illustrations, graphs, and very understandable explanations.

Anyone reading this book better know what they are getting into. This book assumes more than intermediate knowledge of the Java language, but assumes nothing about your knowledge of graph algorithms. So be prepared to be intrigued, a little confused at times, but most of all, educated.

Discuss book in the Saloon More info at Amazon.com




Enterprise J2ME: Developing Mobile Java Applications
by Michael Yuan


Prentice Hall PTR
1 edition
November 2003
480 pages

Reviewed by Lasse Koskela, November 2003
  (8 of 10)


"Enterprise J2ME" is a toolbox for mobile Java developers involved in developing enterprise-scale applications. A lot of focus is given on available alternatives (both general approaches and product offerings, open source and commercial) for handling the problem of spotty and low-bandwidth connectivity, and on technologies for communicating between the mobile client and enterprise systems. Furthermore, plenty of sample code is available illustrating these techniques in the form of several full-blown sample applications downloadable from the companion website.

The book has packed a lot of coverage into less than 500 pages. This inevitably means that many subjects are bypassed rather quickly, referring to sample code for details. Fortunately, Yuan has found a reasonable balance and managed to include sufficient detail in those subjects that interest me the most (networking, on-device databases, XML and web services, and security). I would say that this book is best used as a reference for a mobile application architect wondering what her choices are. On the other hand, the focus on particular products -- proprietary APIs may render some sections of the book outdated once standardization becomes reality in those areas (which Yuan explicitly and repeatedly predicts).

All in all, "Enterprise J2ME" is definitely the most comprehensive resource to date for enterprise Java developers having to deal with the new world of smart clients and packs a whole bunch of valuable information and tips for actual implementation.

Discuss book in the Saloon More info at Amazon.com




Java Regular Expressions: Taming the java.util.regex Engine
by Mehran Habibi


Apress
1 edition
October 2003
280 pages

Reviewed by Thomas Paul, March 2004
  (9 of 10)


This book is an excellent introduction to regular expressions in general and the Java regex package in particular. The author assumes that the reader has no experience with regular expressions so even if the subject is completely new to you, you will be able to follow along easily.

The book approaches the topic in a clever way that makes it both an excellent tutorial as well as an excellent reference to keep nearby. The first chapter covers regular expression syntax. The second chapter looks at the two main classes, Pattern and Matcher, and discusses each of the methods in these classes. The way the information is presented makes it a perfect tutorial, as the methods are introduced in a sensible order that allows the detailed discussion to build. At the same time, since each method is discussed with excellent description and examples, it serves as a useful reference. Chapter three looks at some advanced topics such as groups, qualifiers, and lookaheads. In chapter four the author gives us some advice and chapter five demonstrates some useful examples. The books ends with a reference, summarizing the topics discussed in the first two chapters.

Other than a few minor misprints and one slightly confusing group example early on I could find nothing to complain about. Any Java programmer interested in learning regular expressions will find this book extremely useful. It is hard to imagine that there could be a better book on regular expressions than this one.

Discuss book in the Saloon More info at Amazon.com



Apress
1 edition
October 2003
280 pages

Reviewed by Ernest Friedman-Hill, February 2004
  (9 of 10)


An old-fashioned regular expressions education starts with a Big Scary Table listing every metacharacter. Newbies often run away screaming when faced with this explosion of punctuation, never to return.

Help has arrived in this small, accessible book. Rather than starting out with the Big Scary Table, Habibi appeals to the reader's intuition, and demonstrates several regex applications before even mentioning punctuation marks. By the time that fragments of the Big Scary Table do arrive, the reader has already seen fully worked examples and learned techniques for developing a regular expression for a given problem.

Instead of the Big Scary Table, this book uses small tables that make understanding complex regular expressions easy. There are tables which break up regular expressions into pieces, each row pairing one chunk of the expression with a clear explanation. Other tables show the steps involved in developing a complex regex. The honest explanation of each step makes these tables valuable real-life case studies.

After describing regular expressions themselves, the book presents a practical overview of the java.util.regex API. There's also a separate chapter on advanced features, and a final chapter showing fully-worked practical applications.

The only flaw in this book is a slight bias toward Java on Windows systems. A reader working the examples on Linux would have minor problems the author doesn't mention.

Overall, I'd strongly recommend this book to anyone new to java.util.regex, whether or not they have previous regular expressions experience.

Discuss book in the Saloon More info at Amazon.com



Apress
1 edition
October 2003
280 pages

Reviewed by Dirk Schreckmann, February 2004
  (9 of 10)


I've had this book a bit over a day. Yes, I've read the entire book. It is that good.

As I first approached it, I was afraid of this book. It's so easy to explain regular expressions in terribly dry and technical ways. Max, the author, doesn't do that.

Don't fear your painful memories of the wordy, boring, and expensive text books read during university studies. This book won't bring them back. Max has again demonstrated his excellent, clear and concise writing skills with Java Regular Expressions.

This book is not some boring reference or cookbook of regular expressions, excellent ones of which can be found for free on the internet. Instead, this book provides excellent explanations detailing techniques on how to understand and create regular expressions - object-oriented techniques at that! This is not your father's procedural regex reference.

New to java.util.regex? Buy this book, not that other one.

(Note: I'm a difficult reviewer. I won't give a 10 horseshoe review, excepting two classics that come to mind - Thoreau's Walden and Orwell's 1984.)

Discuss book in the Saloon More info at Amazon.com




Enterprise Java Security: Building Secure J2EE Applications
by Marco Pistoia, Larry Koved, Anthony Nadalin, Nataraj Nagaratnam


Addison-Wesley Professional
1 edition
February 2004
608 pages

Reviewed by Thomas Paul, April 2004
  (6 of 10)


This book is a nice, general, "white paper" type overview of security in Java. The authors demonstrate a good, solid understanding of J2EE security. However, they don't provide enough in the way of actual implementation examples. I feel this is a major shortcoming of the book.

The book starts with a general overview of security and then moves on to using applets with RMI through a firewall. The next section deals with Servlets, JSP, and EJB security and shows us some deployment descriptors and a few code samples but not enough to get a firm grasp on how to implement security. Part 3 discusses the basics of Java security. Part 4 discusses cryptography. The final part discusses advanced topics including a way too brief chapter on web services.

In general the book spends too much space discussing security topics and not nearly enough space demonstrating how to use the information provided. The book tends to be too technical in ways that are generally not interesting to Java developers. For example, does a developer really need this: "One straightforward application of the one-way function to DH is to have two entities to publicly agree on a point P on an elliptic curve E over a finite field, where p is a very large prime number."

I think this book may be very useful in combination with another book that is much more example driven, "J2EE Security for Servlets, EJBs, and Web Services" by Pankaj Kumar.

Discuss book in the Saloon More info at Amazon.com



Addison-Wesley Professional
1 edition
February 2004
608 pages

Reviewed by Lasse Koskela, March 2004
  (8 of 10)


Security is a topic which often seems to be given too little thought. This book gives a hand for the J2EE developer new to security on a Java platform and, especially, on the J2EE platform.

The book has been split into five parts. I have gathered my thoughts about each in their separate paragraphs below.

Part I discusses about the needs of enterprise application security in general, and how these needs are associated with the J2EE components on a two or three-tier architecture, illustrated with pretty pictures of firewalls etc. The discussion is high-level in nature and acts mainly as a smooth entry into the mind-set of implementing security into your application.

Part II takes the focus inside J2EE and shows what kind of handles the J2EE architecture provides for security-related services such as authentication and authorization. Basically, this part of the book explains the programmatic and declarative security for web applications and Enterprise JavaBean components. The writing is very easy to understand but I would've liked to see one or two complete examples of a deployment descriptor instead of just small snippets. To me, seeing a full example would seem like a great way to tie things up in the context.

Part III, titled "The Foundations of Java 2 Security", is something I'm sure I'll come back to when I have to deal with J2SE security. The authors describe the whole shebang from class loaders to security managers and the horde of different types of permissions. This part also includes a chapter about the Java Authentication and Authorization Service (JAAS), which is top-notch amongst those I've seen about the subject. Clear writing combined with precise and illustrative examples. The one topic that could've deserved some concrete usage help were the command-line utilities such as keytool and jarsigner. Also, applet security was only mentioned in passing (the word "applet" can't even be found from the index), which may or may not be significant for the reader.

Part IV is dedicated to the art of cryptography. After presenting the basics of cryptographic algorithms, secret and public-key cryptography, the authors continue by discussing how the selected algorithms affect the confidentiality, integrity, authenticity, and non-repudiation properties of data. The chapters also discuss digital signatures, certificates, and key distribution on a high level. The rest of the fourth part shows how the JCA and JCE frameworks are built (i.e. how the pluggable implementation architecture works) and how the relevant APIs are used. The Java Secure Socket Extension (JSSE) for SSL is also presented with a couple of very nice examples including server and client authentication.

The fifth and final part talks about "advanced" topics such as web services security and some security considerations for container providers (which seems a bit out-of-place in this book). The subjects are covered only very superficially, which is understandable because the area of web services security admittedly requires a whole book to discuss in detail.

I can recommend this book as a solid source of information for J2EE security topics. Accompanied with vendor-specific documentation on deployment and configuration issues, you probably won't need anything else for your security needs. Its biggest weakness, in my opinion, is the lack of more complete sample code which could've at least been published online.

Discuss book in the Saloon More info at Amazon.com




Java 2, v5.0 (Tiger) New Features
by Herbert Schildt


McGraw-Hill
1 edition
July 2004
216 pages

Reviewed by Lasse Koskela, August 2004
  (8 of 10)


If you already know Java and want to utilize the impressive array of innovations contained in Java 2, v5.0, this book is for you." That's actually from the back cover of the book and I have to say I fully agree. Schildt has brought us many useful titles and "Java 2, v5.0 (Tiger) New Features" is no exception.

The delightfully small book (a hair below 200 pages) packs just enough information to upgrade your know-how to the level of the latest Java version. Each topic (generics, autoboxing, enums, for-each, static imports, varargs, annotations, formatter, scanner) is explained clearly and concisely with expressive code samples. Schildt even lets you in on how the compiler handles some of these syntax enhancements, which I especially enjoyed reading about. The major features of each new addition is discussed in more detail and the less common methods are given a one-sentence description, which suits me, personally, quite well as long as I agree with what's common and what's not.

Talking about agreeing on what's common, the only real gripes I have with "Java 2, v5.0 (Tiger) New Features" is that the author completely by-passes the addition of java.lang.instrument and java.lang.management packages, only mentioning that those have been added. I would've certainly expected to read at least a page worth of overview on the actual services those packages provide.

In summary, I'd say you can't go wrong with this book. It's not a "complete reference" nor is it intended to be. It's a quick path to knowing just enough to feel comfortable diving into Java code written "Tiger style".

Discuss book in the Saloon More info at Amazon.com




Beginners Java 2 v1.5 2004 on DVD
by Neal Ford


D.V. Press
1 edition

pages

Reviewed by Mark Spritzler, November 2004
  (8 of 10)


One of the things that I hadn't seen in the Java World was training videos, or in this case training DVDs. Not much difference there, except you can cover a lot more than on a Video. The other thing I would like to see is an "Audio Book" that you can hear while driving to work, so that you can learn Java there too. Maybe these guys will put one out.

Ok, now to the review. I found this DVD to be very informative, and covers many topics. The quality of the video and audio remind of my AV days in High School, but heck you don't expect Visual Effects like today's Hollywood movies do ya? You can get over the quality and enjoy learning Java. Overall this DVD covers all of Java, and not much about all the new features in Java 5.0, although there is a chapter later that covers it. But this DVD shouldn't be about the new features, but about teaching Java. This is where it make me wonder if a programming beginner watching this DVD will understand all that is being said. There seems to be a "pre-requisite" knowledge before viewing.

Now, on the other side, I really did like the topics that were covered, and Neal pounds the point of following standards in code and OO principles, that every developer needs to follow. I like the way that Neal presents and teaches, and would recommend this DVD.

Discuss book in the Saloon More info at Amazon.com




Murach's Beginning Java 2, JDK 5
by Doug Lowe, Joel Murach, Andrea Steelman


Mike Murach & Associates
1 edition
January 2005
782 pages

Reviewed by David O'Meara, March 2005
  (8 of 10)


This book is aimed at someone learning to use Java for the very first time starting with version 1.5. There are sections that will be useful to people moving to Java 1.5 from a previous version, but there are probably better books if this is what you need.

Murach's "Beginning Java 2, JDK 5" is set out like a text book, where it is mainly designed to be read cover to cover, possibly skipping a couple of chapters on the way. It starts very slowly, guiding you through your initial steps and spends the first few chapters building a basic knowledge of the Java language. As long as you bother to do the exercises after each chapter you should have a solid foundation to work on.

I was disappointed that (possibly due to the library size) the javadocs weren't included; it's just my preference, but I spent hours flipping pages while learning the language.

However, it is nice that the 'required reading' is extended by devoting a chapter each to topics such as collections, threads and Swing to name a few.

Unfortunately it is not set out like a reference book so it may be harder to find topics when you need to refer to them later, but the book will certainly give you a solid beginning and be a valuable resource in your first year of programming Java.

Discuss book in the Saloon More info at Amazon.com




Apache Jakarta Commons : Reusable Java Components
by Will Iverson


Prentice Hall PTR
1 edition
February 2005
360 pages

Reviewed by Jeanne Boyarsky, April 2005
  (8 of 10)


"Apache Jakarta Commons" shows the reader the power of the Commons libraries. It provides a very brief overview of the available components and goes into detail on 12 of them. APIs are explained through both class diagrams and description. The author provides best practices, warnings and project ideas. The book gets started right away, on page three.

The code examples are clear and well commented. The consistent coding standard throughout the book helps with readability. The author highlights differences between the sample code and "real apps."

The book is meant for experienced Java programmers. The author assumes readers have knowledge of JSPs, Servlets, Swing and UML. Most importantly, he assumes readers are comfortable with learning by reading through code. Readers are not assumed to have knowledge of the specialized topics such as XPath or encryption.

Note that this 325-page book is really a 201-page book. Appendix A is the entire API of the Commons lang project -- word for word. I found the printed API to be difficult to read since the methods tend to run into each other. Since the other Commons projects have APIs online only, readers have to be comfortable using the online JavaDoc anyway.

This is the type of book that readers will find either valuable or minimally useful. For those who like bound versions, this book gets you started quickly. For those who like online documentation, the UML diagrams are the primary benefit given the online JavaDoc and code samples.

Discuss book in the Saloon More info at Amazon.com




Java Puzzlers : Traps, Pitfalls, and Corner Cases
by Joshua Bloch, Neal Gafter


Addison-Wesley Professional
1 edition
July 2005
304 pages

Reviewed by Ernest Friedman-Hill, November 2005
  (9 of 10)


First, let's get this out of the way: you're not as smart as you think you are. Seriously. You don't know everything about Java. It's possible, however, that these authors do.

"Java Puzzlers" shows you more tricky corners of the Java language than you ever expected could exist. Not odd behaviors of obscure API classes, not failings of a particular implementation, but known consequences of the language specification itself. Each puzzler, written in an engaging and often humorous style, gives you a chance to figure things out for yourself before lowering the boom to let you know that, once again... you're wrong.

If you read this book and take its message to heart, you'll learn to avoid the dark alleys of Java, making sure your programs will never inadvertently become puzzlers for you or those who come after you.

Discuss book in the Saloon More info at Amazon.com



Addison-Wesley Professional
1 edition
July 2005
304 pages

Reviewed by John Wetherbie, August 2005
  (9 of 10)


This is a fun book that's educational, too! The purpose is to help the reader learn about traps you can fall into coding in Java through the use of code puzzles. There are 95 puzzlers with each puzzle and associated solution discussion running two to three pages each. Appendix A provides a quick summary of the various traps identified in the book and the puzzlers in which they appeared. Appendix B describes the optical illusions scattered throughout the book.

In general each puzzler has a very short description of what the program appears to do and the program itself. It is your job to figure out what the program actually does and more importantly why. The following page is a discussion of why the program actually does what it does. Important points and traps to avoid are bolded in the discussion. Note that some of the puzzlers depend on you having Java 1.5.

Bloch and Gafter want you to think about and be aware of the language features and APIs you are using along with having fun. Read the description and the code, determine what the code does, run the code, and then, in most cases, rethink your analysis. Then read the solution and think about what the authors are saying. Go read the sections of the Java Language Specification or other references mentioned in the solution.

Truly an enjoyable book!

Full Disclosure: I received a free copy of this book for review.

Discuss book in the Saloon More info at Amazon.com




Pro Java EE 5; Performance Management and Optimization
by Steven Haines


Apress
1 edition
May 2006
424 pages

Reviewed by Mark Spritzler, September 2006
  (10 of 10)


This is a one of a kind book. It is the only one that discusses performance maintenance and optimization for all your Java EE applications, from code to servers.

The first section covers processes that you need to have in the full lifecycle of your application. Starting monitoring and performance tuning early on in the process to make it easier to keep your app performing at its best.

The second part covers performance tuning, where to best tune your application for the biggest bang for your buck, from the JVM, first place to tune, to your pooling and other configurations.

The third part covers tuning your production environment, which should be easy, as long as you have statistics already from your development to test server load balancing.

And finally the last part has tips and tricks.

For just the 10 pages on JVM Heap/Garbage Collection and tuning alone is worth the price of the book.

This book should be your single source of performance tuning and monitoring for all Java EE Applications. It is your bible on performance.

Discuss book in the Saloon More info at Amazon.com




Agile Java Development with Spring, Hibernate and Eclipse
by Anil Hemrajani


Sams
1 edition
May 2006
360 pages

Reviewed by Balaji Loganathan, February 2007
  (9 of 10)


Bought and read this book from Safari-O'Reilly online.

The title itself gets the mood on. This book will help you to understand and get started with Spring-Hibernate-Eclipse kind of projects.

This book is definitely a best shot for beginners in JEE.

Its not complete reference for every topics the author addresses, but will sure give you extended overview on XP, Agile etc.,

If you want to get started with your spring project immediately then this book is worth buying.

This book doesn't cover Spring AOP - Hmm.. Its a pity.

Its interesting to see the chapters that start with a discussion between programmers and client.

Getting the sample code up and running is also just a click of a Ant build button.

Configuring Eclipse/Spring/ANT have been covered in detail while many other key technologies were just started and finished on a single page.

The appendix were quite useful, like AMDD, XP cheatsheet

Most commonly used technologies in JEE were addressed, so you can get to know what JEE is all about.

Altogether i recommend this book for Beginners and Intermediates to get know the beautiful world of JEE.

Discuss book in the Saloon More info at Amazon.com




Google Web Toolkit: GWT Java Ajax Programming
by Prabhakar Chaganti


Packt Publishing
1 edition
February 2007
248 pages

Reviewed by Jeanne Boyarsky, April 2007
  (8 of 10)


"Google Web Toolkit: GWT Java AJAX Programming" - I learned a lot about GWT reading this book. The book assumes you know Java and web programming (HTML/JavaScript/Web packaging) well. Some of the examples use other technologies such as JDBC and XPath, but they are understandable without this knowledge.

I liked the examples as they were things you would want to do. The examples range from self contained form tasks to a full widget. The examples appeared to be "complete" with a description before each section. While there are explanations at the end of the example, some examples are really long. One example has 3.75 pages of getters and setters. Some examples emphasize business logic more than GWT. Other examples were really good. I think the examples get better if you read the book a few times. I was having trouble following the large code segments at the beginning and it got easier once I understood GWT. Basically, you should feel comfortable learning from code.

I wasn't always that clear on what objects/APIs were available in different scenarios, but the GWT API online provides that information nicely. I'd like the book shows me how to do something rather than just repeat what is online. I think this book and the website complement each other nicely by providing different perspectives.

All in all, I am happy with the book. It helps jump into GWT and provides a useful resource to learn by example.

Discuss book in the Saloon More info at Amazon.com




Next Generation Java Testing: TestNG and Advanced Concepts
by Cedric Beust, Hani Suleiman


Addison-Wesley Professional
1 edition
October 2007
512 pages

Reviewed by David O'Meara, January 2008
  (6 of 10)


The first thing to note about the book Next Generation Java Testing is that while it does indeed cover advanced testing concepts in Java, these concepts are largely geared towards the use of the free TestNG (www.testng.org) product, and I think it is worth being aware of and accepting this from the beginning. The book contains valuable information on testing alone, just not enough to make it worth while if you're not interested in at least evaluating TestNG.

Possibly unfairly, this book will be judged based on a comparison between JUnit and TestNG themselves, rather than being able to judge the book on its own merits. The TestNG product is aimed at a complete redesign of the Java unit testing process, so it surprised me that the only real discussion on JUnit was a nod towards them in the first chapter, and a mention that some of the TestNG features had been incorporated into JUnit. Strange then that there wasn't greater effort placed on comparing and contrasting their tool against the industry standard.

When treated as a stand-alone book, it is a good reference for TestNG, and if you have already evaluated the product and would like to use it then this is a good book to help you do that. It won't, however, help you make this decision, and while the TestNG product has some intriguing features and different ways to test than that of JUnit, I believe you'll already need to be experienced in JUnit to get full use of both the book and the product.

Discuss book in the Saloon More info at Amazon.com



Addison-Wesley Professional
1 edition
October 2007
512 pages

Reviewed by Jeanne Boyarsky, November 2007
  (7 of 10)


"Next Generation Java Testing" has a subtitle: "TestNG and Advanced Concepts." This isn't surprising given the creator of TestNG is an author, but is important to realize. It starts with 6.5 pages on why TestNG is better than JUnit 3.8. Then only two paragraphs on JUnit 4. This has been a pet peeve of mine for some time. It's like comparing the current version of C# to Java 1.3 and then saying Java is worse because it doesn't have generics.

I liked the code snippets in the TestNG sections as they focused on relevant pieces. The examples were to the point. Especially the performance and J2EE sections. I liked the concepts described in chapter 2 (over 100 pages.)

The authors describe open source libraries that integrate with TestNG. I liked this coverage although JMock could have used a code example for comparison (easyMock had one.) Ant targets were provided for the code coverage examples.

Chapter seven is titled "digressions." Some quotes from the text on this: "pet peeves, rants, annoyances and musings", "much ... very tangentially relevant", "some ... outright irrelavant." I agree with some and disagree with some. I think this chapter would have been better as a series of blog posts than a chapter in a book.

If you are using/planning to use TestNG and can ignore the rants, this is a good book.

Discuss book in the Saloon More info at Amazon.com




Test Driven: TDD and Acceptance TDD for Java Developers
by Lasse Koskela


Manning Publications
1 edition
October 2007
470 pages

Reviewed by Jeanne Boyarsky, January 2008
  (10 of 10)


"Test Driven" is geared toward Java developers interested in writing better JUnit tests. Despite the title, it is useful whether you want to write test first or test last.

The first part of the book covers the softer aspects of testing such as how to decide what tests to write first and spikes. The rest of the book covers writing tests for common Java components including servlets, data access code and Swing. Examples were for things that we frequently want to test. They included "hard" things such as testing times and threaded code.

I particularly liked the sections on design and testing patterns. There was good coverage of different JUnit extension libraries with examples including dbunit, jmock, easymock, jemmy and abbot. There was also a full chapter on FIT.

I got a sense of "in the trenches" realism from the book. Tradeoffs of techniques were clearing mentioned. The chapter on adopting TDD shows the experience of someone who has done it many times. The section on how to fight resistance really spoke to me.

This is the first book I have read using JUnit 4, which was useful for reading well written tests. While there is an appendix "tutorial" on JUnit 3.8 and 4.0 (two page annotated classes), you really should feel comfortable with one version of JUnit before reading this book. While a few sections pertained to specific technologies, such as Spring, the concepts apply to everyone. I highly recommend this book.

Discuss book in the Saloon More info at Amazon.com




Java Fundamentals I and II (Video Training)
by Deitel and Associates Inc.


Prentice Hall PTR
1 edition
March 2008
128 pages

Reviewed by Marc Peabody, May 2008
  (6 of 10)


First off, this didn't work in my DVD player. I had to play it from the computer. Small bummer.

This was basically fourteen hours of staring at code already written in a NetBeans editor while a faceless (and somewhat monotone) voice explained how the code works. The mouse pointer moves around or highlights some text to point out a particular area of code, the lessons sometimes shift to JavaDoc or a diagram, and you see Paul's face while he gives the intro and summary of each lesson but it wasn't enough to keep me engaged.

Most if not all of the examples come from the book Java How to Program by Deitel and Associates, also around a hundred bucks. Personally, I'd prefer the book. If I'm staring at a pre-existing code sample, it's easier to read on paper. This does come with a small supplemental book with code samples but it's black and white, whereas the Java How to Program is in beautiful color.

Overall, this LiveLessons DVD pack isn't horrible - I simply think the Deitel book is a better value and I can only recommend this DVD product if you have two hundred dollars to spend and you wish to buy both the Java How to Program book and purchase this LiveLessons as a supplemental to break up the pace of your reading (it's a big book).

Discuss book in the Saloon More info at Amazon.com




Java CAPS Basics: Implementing Common EAI Patterns
by Michael Czapski, Sebastian Krueger, Brendan Marry, Saurabh Sahai, Peter Vaneris, Andrew Walker


Prentice Hall PTR
1 edition
May 2008
496 pages

Reviewed by Michael Ernest, May 2008
  (9 of 10)


The only complaint I have with this book is the word 'Basics' in the title. It's expected readers are familiar with EAI patterns, but better if they've read Patterns of Enterprise Application Architecture.

The authors also assume readers are familiar, if not proficient, with the JCAPS tools. With that in mind, this book and its companion CD relate each discussed pattern to an implemented solution in JCAPS. It took me quite some time to figure out some of these solutions on my own, and I was pleased to have my hunches confirmed by experts. Other pattern implementations were not apparent to me; I'll save a great deal of time using them as given.

The discussion is thorough, deliberate and complete, including drawbacks and limitations that go hand-in-hand with certain pattern solutions. These are valuable insights, but they can make the reading heavy work at times. I recommend chewing off no more than a chapter's worth of patterns at a time, and reading each pattern implementation twice before implementing it once.

The companion CD has many screen shots. Don't be alarmed by the few illustrations in the printed text. The CD doc is 700 pages, and provides detailed graphic cues for implementing the patterns.

The price seemed high at first. With the companion CD, however, it's clear no small effort was made. I think the market could still another book though, one that covers JCAPS fundamentals. This guide is not for beginners.

Discuss book in the Saloon More info at Amazon.com




Programming Groovy: Dynamic Productivity for the Java Developer
by Venkat Subramaniam


Pragmatic Bookshelf
1 edition
April 2008
318 pages

Reviewed by Ernest J. Friedman-Hill, May 2008
  (7 of 10)


We live in an increasingly informal and familiar world. Perfect strangers want to call me by my first name, and waiters pull up a chair and join me at table while I hear about today's specials. Perhaps it's inevitable, then, that technical books like "Programming Groovy" are becoming commonplace.

This is a reasonable, if informal, introduction to the Groovy language. Although I haven't had the opportunity to do much with Groovy myself, I suspect that this book wouldn't help if I painted myself into a newbie's corner; I would want a more detailed language guide to refer to.

On a personal level, I didn't like this book. The author's conspiratorial winks and constant insistence that he understands what I know, want, and need, grated on me throughout. Because in fact, he did not know that I wanted more detail, more rigor, more formality, than he was offering. He did not know that I wanted a description of the Groovy language itself, rather than repeated assurances that it's "just like Java" interspersed with multiple demonstrations of the ways in which it's more assuredly not. He did not seem to know (as all authors of scripting-language books seem not to know) that modern IDEs completely obviate the need to type Java syntax in manually.

It's not my cup of tea, but if you do a lot of texting, or have a Twitter account, I'm betting you'll love this book.

Discuss book in the Saloon More info at Amazon.com




OSGi and Equinox: Creating Highly Modular Java Systems
by Jeff McAffer, Paul Vanderlei & Simon Archer


Addison-Wesley Professional
1 edition
February 24, 2010
460 pages

Reviewed by Jeanne Boyarsky, April 2010
  (8 of 10)


"OSGi and Equinox" is the first "Eclipse Series" book I have read. It has three parts.

The first part is an introduction. The brief history shows how OSGI came to be and the benefits. It had excellent visuals to see the concepts being presented.

The second part is an extended tutorial to create the TOAST application from scratch. The tutorial assumes you've never used Eclipse before so it was a bit slow to get started. I would have liked seeing how to create a project/class as an appendix. There were a ton of IDE screenshots so I certainly felt like I was doing the tutorial with the author. That style got a little dry/repetitive; maybe because I wasn't following along on a computer. Many concepts were covered and there were good tips and warnings to the reader. I was a bit puzzled why the tests are using EasyMock with Java 5 and JUnit 4. I'll be sure to ask the author when he is at JavaRanch the week of April 20th.

The third part is "deep dives" into specific concepts. This section was less tutorial-y and I liked it better. It includes patterns, the lifecycle and crosscutting concerns. There is also an "other"/kitchen sink chapter that contains numerous tips and tracks.

Overall, I did learn a lot from the book. If you are looking to learn OSGi/Equinox, I think it is good to read.

Discuss book in the Saloon More info at Amazon.com



Addison-Wesley Professional
1 edition
February 24, 2010
460 pages

Reviewed by Deepak Bala, December 2010
  (9 of 10)


This book has a detailed explanation of how to develop modular Java systems and applications using OSGi and Equinox. It is a very good book not only for OSGI beginners but also for people who want understand eclipse plugin development. Those that do not have experience with OSGi previously, will feel at home when they begin reading the book.

The book itself feels like a tutorial with plenty of screen grabs to go with it. As such it makes for an easy read as the author guides you through the OSGi concepts. The chapters towards the end focus more on the details, while the rest of the book is a practical guide to OSGi.

The examples can be tried with an Eclipse plug-in which is installed from the web. I would advise folks to read the book and practice the examples at the same time. They go hand in hand.

Overall a great book to learn OSGi and Equinox.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com




The CERT Oracle Secure Coding Standard for Java
by Fred Long et al


Addison-Wesley Professional
edition
September 8, 2011
744 pages

Reviewed by Jeanne Boyarsky, November 2011
  (8 of 10)



"The CERT Oracle Secure Coding Standard for Java." The name says it all. This is a book about security, no? Actually, it is not. It is a book about security and quality. The authors don't define security in quite the same way I do. For example calling string.replace() and ignoring the result is incorrect. However it is a quality issue. I'm not convinced the relationship to security.

In any case, the practices are excellent. They are clearly documented in the form of:
attack/flaw
bad code example
good code example

I think the code examples could have been a little clearer. Maybe highlight the differences between the two in longer snippets.

I particularly liked the tables where they show severity, likelihood, cost to fix, priority and level. I also like that they call attention to which can be easily found by static analysis.

The focus is on core Java (not JEE/web) and a lot of emphasis is placed on threading. The book calls attention to different versions of Java and includes Java 7. Overall a worthwhile addition to the bookshelf.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com




Java 7 JAX-WS Web Services
by Deepak Vora


Packt Publishing
edition
May 2012
64 pages

Reviewed by Jeanne Boyarsky, June 2012
  (5 of 10)



"Java 7 JAX-WS Web Services" is a mini-book from Packt Press. This means it is 51 pages and costs less ($20.) While normally, I prefer paper books, I think the e-book is better for min-books because they are so short. And then the price drops to under $10 which makes the short length feel somewhat better.

Which is important because the book only has two chapters. One is on how to install glassfish and netbeans. Which leaves 35 pages of "real content. Chapter two was good though.

I think I would have liked the book better if the title was "My First Web Service with NetBeans." For someone new to NetBeans/Web Services, it is a fine tutorial. It covers the main tags and the major steps.

I emphasize the word beginners - there were 35 screenshots in the book. Some were basics like "file > new file > java class" and some had more use. (Honestly, if you don't know how to create a class in your IDE< you aren't ready to make a web service.)

I suspect other minibooks in the series are better though. This one doesn't feel like enough content for twenty bucks. And you'd have to be new to NetBeans for it to have much value for $10

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com




Sunshine On Java: Secure Web Applications With Code Examples
by Natalie "Sunny" Wear



edition
July 2012
29 pages

Reviewed by Jeanne Boyarsky, August 2012
  (7 of 10)



This e-chapter (e-book) covers 3 of the OWASP top 10 (XSS, CSRF and SQL injection.) With a bonus mention of session fixation. While Amazon counts it as 29 pages, once you get past the intro we are down to 24 pages. The author covers the attacks and how to prevent them in a succinct manner.

When I first read the chapter, I was surprised to see Clickjacking wasn't included. But then I looked and it is not currently in the OWASP top 10 which was the inspiration for the book. (It is still important though; make sure to read about it on owasp.org.)

I would have liked more detail. For example show an example of CSRF along with the different ways to prevent it. It's not enough to say use a filter/token. This introduces issues of its own which need to be addressed.

As far as whether to buy the e-chapter, it is a question of whether you would pay $5 for one chapter of a book. A good chapter, but still only one chapter. I think the answer is yes in this case. But I can't bring myself to call it a book so I'm going to recommend this e-chapter to those who are unfamiliar with two or three of these attacks. If you are already familiar with them, just go on OWASP directly.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com




Effective Unit Testing: A guide for Java Developers
by Lasse Koskela


Manning Publications
edition
February 2013
248 pages

Reviewed by Jeanne Boyarsky, March 2013
  (10 of 10)



"Effective Unit Testing" felt familiar to me. I think it is because I read "Test Driven" and saw the author present some of the content from this title at the 2012 Server Side Java Symposium. You can get a feel for some of the smells from my live blog post of that session http://www.selikoff.net/2011/03/16/test-smells-breakout-at-the-server-side-java-symposium/

Part one sets the stage. It walks you through a hypothetical teams journey - no tests → tests → test driven! I liked the examples of bad code and bad test examples. And I really like the explanation of different types of test doubles. I also liked the example of jMock vs Mockito to do the same thing.

Part two shows you a series of test smells and how to fix them. One of my favorites is something really simple. How to make a bowling example more readable by using method names so you can embed "magic values" in the code. I also particularly liked the segment on how parameterized tests can be an anti-pattern along with how to avoid this problem.

Part three is "other things." It covers using other JVM languages to test and how to make your tests faster. Both via the tests and running them in the cloud. I really liked the part on how to profile in both Ant (which I knew) and Maven (which I haven't needed to yet.)

While there is an appendix to get you up to speed on JUnit, you should read a different book if you are trying to get up to speed on JUnit. I recommend "JUnit in Action" or "Test Driven" for that. Once you know any unit testing framework, it is time to come back to this book so you can write better tests.

It was a great book. My only problem was that having seen the session some was repetitive. But I highly recommend both the book and the talk.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com




Java Server Side Programming: The Conceptual Foundation
by Mukesh Prasad


CreateSpace Independent Publishing Platform
1.0.1 edition
August 2013
186 pages

Reviewed by Ulf Dittmer, November 2013
  (8 of 10)



This book teaches the foundations of server-side web development in Java by creating a basic servlet/JSP container from scratch. This is a very different, and rather interesting, approach than is usually taken. It starts with a socket client and server communicating with one another, gets into the basics of HTTP, then adds serving static files, error handling, cookies and form processing. At each step the server is extended to handle the new features, and the author explains the necessary HTTP and web concepts. The server is then extended to handle a basic version of servlets and sessions, and finally to handle a basic version of JSPs, including auto-recompilation and reloading. (All code is downloadable from the net, so instead of programming along -which is nonetheless recommended-, the reader can run the ready-made code as is.) All this takes up about two thirds of the book; the remaining chapters talk about how the features introduced with the server relate to the actual servlet and JSP specifications, and what features those provide that go further than that.

This approach works pretty well, making the reader acquainted not just with the specifics of servlets and JSPs, but also provides some detail on why certain features of the web are as they are - useful knowledge that often gets short shrift in pure programming introductions.

The lack of an index is not as strange as it sounds at first, because the book is a tutorial, meant to be read from start to finish, rather than a reference. And since it's rather short -less than 180 pages, a nice change from the usual tech tomes- and has an extensive table of contents, this reviewer didn't miss the it.

The book could have done with more extensive editing and proofreading -it was apparently self-published, as no publisher is mentioned- but the issues are minor.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com




Java (tm) 2 Platform, Enterprise Edition: Platform and Component Specifications (The Java (tm) Series)
by Bill Shannon, Mark Hapner, Vlada Matena, James Davidson, Eduardo Pelegri-Llopart, Larry Cable, Enterprise Team


Pearson Education
1 edition
May 2000
748 pages

Reviewed by John Ternlund, August 2001
  (7 of 10)


A quick way to describe Java (tm) 2 Platform, Enterprise Edition: Platform and Component Specifications (The Java (tm) Series) would be to say it lays out the specifications of the architecture and inner workings for developing Java 2 Enterprise (J2EE) applications. It provides for example, a good overview on how a Java 2 Enterprise Edition (J2EE) Enterprise JavaBean (EJB) server is built.

Anyone who would like the specifications for each of the J2EE components in hard copy form should look to this text. Developers who are interested in understanding some of the underlying building blocks of EJB and Servlet technology or need to provide engines that conform to the specifications would find this text beneficial.

Details from security down to the basic information needed to write your own application server can be found in these pages. The book is organized well and it is interesting to read the specifications from these authors involved with Sun. This text lays out the Java Specifications for the Java 2 Platform, Enterprise Edition (version 1.2 is covered), Servlets (version 2.2 is covered), JavaServer Pages (JSP) (version 1.2 is covered), and finally, EJB (version 1.1 is covered).

The book is not meant to be a beginning J2EE users guide. It does not make a good starter or introductory book to J2EE. This is an advanced Java book which makes a nice programmers reference if you are interested in the inner working details of J2EE.

Discuss book in the Saloon More info at Amazon.com




Sams Teach Yourself Java in 24 Hours (Covering Java 7 and Android) (6th Edition)
by Rogers Cadenhead


Sams
6 edition
October 2011
432 pages

Reviewed by Mohamed Sanaulla, May 2012
  (5 of 10)



If you are starting out learning Java, then this book is NOT for you. If you have programmed quite a bit in java then this book is NOT for you.

With the introduction above, let me start with the good points about the book:
1. A good amount of effort put in for Swing and AWT related concepts.
2. There are some exercise questions to follow after each chapter.
3. Gives some introduction on Android. This I think is good because as a beginner its appealing to know the adaption of Java language.

Now to the not so good parts:
1. Uses/Encourages the use of NetBeans IDE. Whereas beginners are not encouraged to use IDEs as they never allow you to fail.
2. No chapters on Generics and Collections. Threading covered in terms of Swing which is not the right way to cover it.
3. No try-with-resources feature of Java 7 mentioned in the exception handling section.
4. The chapter on creating Web Services using JAX-WS, parsing XML were not really required. Moreover there has been mention of REST in the JAX-WS chapter where as its using SOAP.
5. No real value added examples to back the content.
6. No good coverage of OOP concepts.

The bottom line is if you are serious about learning Java, then this book is not recommended. The content is simple to understand, but it really doesn't teach Java the right way.

And on a closing note, one can learn a language only when they spend some time learning and trying out the examples and for a language like Java learning about its API is also important.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com




Building Web Services with Java: Making Sense of XML, SOAP, WSDL and UDDI
by Steve Graham, Simon Simeonov, Toufic Boubez, Glen Daniels, Doug Davis, Yuichi Nakamura, Ryo Neyama


Pearson Education
1 edition
December 2001
450 pages

Reviewed by Kyle Brown, January 2002
  (8 of 10)


This book provides coverage most of the current web services standards and technologies, and gives you at least an understanding of where they all fit, while still providing you with enough depth on the crucial ones (SOAP (with Axis), UDDI, etc.) so that you can get started with real projects.

I particularly liked the way in which the authors have created an all-in-one reference book on the most important web services technologies. For instance, I've never been able to read SOAP messages without having a reference on XML namespaces and XML schemas handy -- no more -- it's all covered in this book.

The coverage of the new Apache Axis project is especially good; not only does it explain the advantages of the new architecture for handling SOAP headers, but it gives code examples for making use of these new features. This is to be expected, since many of the authors of this book are major contributors to the Axis project.

I also found the chapters on Web Services security and UDDI to be helpful and enlightening. While all of the chapters in the book don't live up to the promise of these excellent chapters, it's still overall a great introduction to this new set of technologies.

Discuss book in the Saloon More info at Amazon.com




Patterns in Java, Volume 1, A Catalog of Reusable Design Patterns Illustrated with UML
by Mark Grand


Wiley
unknown edition
September 1998
480 pages

Reviewed by Carl Trusiak, November 2001
  (7 of 10)


Mark does an excellent job of covering not only a few of the more common patterns but also, a good quick overview of UML and the software development cycle.

Each pattern is illustrated using UML and has example Java code to demonstrate it's use. While the accompanying CDROM has a little dated software, TogetherJ Whiteboard, Rational Rose 98 and System Architect Trail editions; however, these are great to learn UML. You are also given the opportunity to try each and choose the one you might prefer. The 41 patterns discussed are divided very logically in 6 groupings.

I can't wait to get the opportunity to read Mark's volume 2 and 3!

Discuss book in the Saloon More info at Amazon.com




XML, XSLT, Java, and JSP: A Case Study in Developing a Web Application
by Westy Rockwell


New Riders
unknown edition
July 2001
768 pages

Reviewed by Thomas Paul, September 2001
  (2 of 10)


There are some books that are published that you wonder why the publisher went through the exercise. New Riders should have rejected this manuscript. It claims to be a case study of XML, XSLT, and JSP but it isn't. It is a confused and confusing discussion of the author playing around with technology.

The author wanted to try out some ideas so he decided to write a chat program. But there is no real design effort (you won't find a single UML diagram anywhere) so it is difficult to understand precisely what the application is supposed to look like. Without any real design, the application ends up with one servlet of over 50 pages and another of over 40 pages in length. (The book is inflated with 300 pages of source listings that are unreadable.) As a case study in how to do bad design and write awful code, the book can serve as a warning perhaps. As far as actually trying to explain any of this technology, the author admits that isn't the purpose of the book. In a case study you like to hear of problems encountered or the different solutions attempted but you won't. No mention is made of security or performance. The code itself is useless and can't be used in other applications because it is so poorly designed. The author admits that huge chunks of code need to be refactored.

Overall this book fails to provide any real value.

Discuss book in the Saloon More info at Amazon.com




Sams Teach Yourself Wireless Java with J2ME in 21 days
by Michael Morrison


Sams
unknown edition
June 2001
576 pages

Reviewed by Johannes de Jong, October 2001
  (9 of 10)


I've never bothered to purchase a book that claims it will teach me something in x # days. Well this book surely has changed my mind.

It's a well-structured book that takes you by the hand and step for step teaches you the ins-and-outs of programming for the J2ME "platform".

Programming for mobile devices is all about compromises. Not enough memory, the limitations of the screen etc. Mr. Morrison clearly highlights these limitations and shows you how to program around them.

The examples in the book are fantastic and fun. If they don't get you started on your own little pet project nothing will. I did not manage to try them all but the one's I did try worked perfectly, without any problems.

Mr. Morrison also has an easy style that is fun to read and his enthusiasm for the subject shows. There is a reference to his site Michael Morrison but at the time of writing, it was still under construction.

Having said this all. It would be nice if Mr. Morrison extended his Appendixes to include the API's for J2ME and a list with the New Term's that he has scattered all over his book.

I think it's the perfect book to start your journey programming with J2ME and I mean any device that can use J2ME and not only mobile phones. I highly recommend it.

Discuss book in the Saloon More info at Amazon.com




Mobile Information Device Profile for Java 2 Micro Edition (J2ME)
by


Wiley
1 edition
January 2001
352 pages

Reviewed by Sean MacLean, April 2002
  (3 of 10)


I was genuinely looking forward to learning the finer points of Java wireless device programming and, with this in heart, I read through Ortiz's and Giguere's "Mobile Information Device Profile for Java2 Micro Edition" in a few short days (trying out many of the example programs along the way). Unfortunately, this "ultimate guide to creating applications for wireless devices" fell rather short of its goal. The first few chapters provide a nicely detailed introduction to the development environment and the basics of MIDlets. However, what remains in the proceeding chapters includes far too much coverage of basic Java programming techniques and practices along with innumerable source code listings of the Micro Edition classes. For example, the 23 page chapter on security includes a 11 page primer on network security, encryption, and the like, as well as the 11 pages source code of a third party MD5 digest and Https implementations. This leaves a single page for discussion of the topic as it relates to wireless device programming! Adding to this, the book concludes with a 72 page MIDP/CLDC API appendix. Though money isn't everything, at over 13 cents a page, this is too much.

Discuss book in the Saloon More info at Amazon.com




Java Pitfalls: Time-Saving Solutions and Workarounds to Improve Programs
by Michael C. Daconta(Editor), et al


Wiley
1 edition
April 2000
336 pages

Reviewed by Salman Halim, June 2003
  (8 of 10)


The book contains fifty pitfalls that are arranged in eight categories with a brief description of each pitfall at the beginning of the category. This allows the book to be used as a reference after an initial look-over.

While there will be the initial item that discusses relatively less advanced topics such as language constructs or the usage of the 'finally' clause, there are plenty of other items that will hit home resoundingly. Early on, I found items 14 and 15 (both dealing with cloning) to be quite instructive.

Good, solid book -- covers enough topics to contain something useful for just about everybody. Puts the problems in context and provides explanations for what might be going wrong.

The pitfalls are usually illustrated with code and examples of cases where they might come up. They cover many topics such as GUI design, performance and Collections and are discussed quite thoroughly. A nice thing is that many of the pitfalls aren't programming ERRORS, per se, but design problems that might affect maintenance -- for example, the maintenance difficulties that arise from a class with a single complex constructor or lazy loading to aid performance.

There IS the occasional typographical error (usually in code) but nothing crippling.

Recommendation: new programmers should read the book. Busy experienced programmers could treat it as a reference and only look at topics related to their current project. However, a straight read won't be a waste of time for even experienced programmers.

Discuss book in the Saloon More info at Amazon.com



Wiley
1 edition
April 2000
336 pages

Reviewed by Ajith Kallambella, December 2000
  (6 of 10)


Efficient programming only comes with experience and only those who know the pitfalls know how to avoid them. This book is not for beginners. Familiarity with different API packages such as java.util, java.io, java.awt, and javax.swing is necessary.
The book is neatly categorized into eight logical sections. Each section contains several "gotchas" of Java language that can catch you unaware. Each of these "nuggets of wisdom" teaches you about some specific drawback of Java language and the different ways you can steer away from the pothole. Each topic is short, crisp and is accompanied by code.
The book has a little bit for every kind of reader. If you are not an amateur but always get stumbled on language subtleties, check out the items - Usage of String equals () method versus the = = operator, the "hidden field" pitfall, properly cloning an object and why one should avoid using a constructor while implementing clone() method. These language 'features' have the potential to make you debug the program for several days. If you are an experienced Java programmer you will benefit from the topics such as - reclaiming references when using SoftReference objects and sending serialized objects over sockets etc. For architects and the performance-savvy, the book has some interesting implementation patterns such as handling huge collections with caching and persistence, better data validation techniques, lazy loading for better performance and using object pools for excessive object creation.
The book lacks sections on popular (and error-prone) topics such as Threads, Networking and Remote Objects. Some code samples contain minor syntax errors. There are some lengthy Windows SDK programs which may not appeal to those from non-windows background. Last but not least there is no accompanying source CD.

Discuss book in the Saloon More info at Amazon.com




Teach Yourself Java 2 in 21 Days, Professional Reference Edition
by Laura LeMay and Rogers Cadenhead


Sams
second edition
May 2001
816 pages

Reviewed by Jane Griscti, August 2001
  (7 of 10)


If you are new to Java this book will give you a good look at some of things that Java can do. It paints Java with a broad brush; covering Applets, Applications, Swing, Servlets, JSP and XML In other words, it tells you alot about Java, including the language itself. Unfortunately, it doesn't give you many of the details.

It's great if you just want to learn something about the language and get a general feel for it's scope. But teach you Java?? Maybe, if you've got some prior programming experience and you're not interested in the nitty gritty. On it's own, it won't give you enough information to pass the SCJP but it could be a useful tool to help you decide whether or not you're really interested in the language enough to seek certification.

It wouldn't be the first book I'd recommend if you were serious about learning the language; but if you're just curious, then it's worth a look.

Discuss book in the Saloon More info at Amazon.com




The Java Class Libraries Posters, Standard Edition, v1.3 and Enterprise Edition, v1.2
by Patrick Chan and Rosanna Lee


Prentice Hall PTR
7th edition
March 2002
2 pages

Reviewed by Thomas Paul, March 2001
  (7 of 10)


These posters contain a list of each Java package contained within either the J2SE or the J2EE. The J2SE poster contain 58 of the 70 packages in the Standard Edition while the J2EE poster contains all the packages within the Enterprise Edition. Between the two posters, almost 80 packages and well over 2,000 classes are displayed. The posters show each package and the classes and interfaces making up the package along with their hierarchical relationship to each other and to other classes in other packages. Classes from other packages are coded to show their "home" package. Abstract and final classes are indicated. Posters containing a list of all the classes in the J2SE or the J2EE are useful at times and may save hunting down a class in the API to determine if, for example, JarOutputStream inherits from DeflaterOutputStream or not. But that isn't the real reason you want these posters, and you know you want them! You want these posters on your wall because they look so cool. Just think how jealous your co-workers will be when they see them hanging in your office or cubicle. Think how impressed your boss will be when she realizes how much there is to know about Java. And when you're stuck on a problem and leaning back looking for inspiration you can stare at these posters and no one will think you're daydreaming.
(This text refers to the fifth edition).

More info at Amazon.com




Java 2 Web Developer Certification Study Guide with CD-ROM
by Natalie Levi, Natalie Levi, Philip Heller


Sybex
second edition
November 2002
576 pages

Reviewed by Michael Morris, June 2003
  (6 of 10)


While Sybex had a chance to redeem their credibility after the abysmal release of the Java 2 Web Developer Certification Study Guide First Edition, the Second Edition fell short. While most of the errors were corrected, some still remain. One glaring error that could cause serious trouble to a certification candidate is the assertion that Session attributes are normally thread-safe while the Servlet Specification clearly states that they are not.

The book begins with an assessment test to see what you know before you begin and to identify any weak areas you may have. The thirteen certification objectives are analyzed sequentially. Each chapter is laid out with a list of objectives to be covered, the text, a summary, a list of exam essentials and key terms and a chapter test. Interspersed in the book are Real World Scenarios giving insight into how the subject at hand is being implemented. The code examples are very easy to follow. Probably the biggest advantage to this guide is the CD that comes with it. The full text in e-book form is provided along with a great test engine with three pre-built tests and an option to generate a random test. The test environment itself is a good mockup of the actual Prometric environment with timer and option to mark a question for later review.

I would recommend this book to someone who has experience with Java web components but would advise that they use it along with the Servlet Specification.

Discuss book in the Saloon More info at Amazon.com



Sybex
1 edition
June 2002
448 pages

Reviewed by Matthew Phillips, August 2002
  (3 of 10)


This could have been a great book. The authors did an excellent job of explaining the details of Web Component development in an interesting way. Unfortunately, it appears that they did not know the topic well enough to be writing about it in the first place.

This book has not been out long and the errata page is already huge. I can overlook the many typographical errors, but the factual errors I cannot. It is even worse that the factual errors are explained with the same detail as the valid information. This leaves me with the impression that the book was not rushed, so I cannot think of any explanation for why it is so bad. A corrected second edition would be a welcome sight, but unless that comes don t use this as your only resource for the exam. You will end up retaking it.

Note: Use this link to get to the errata page. Courtesy of Sybex.

Discuss book in the Saloon More info at Amazon.com




The Java(TM) Tutorial: A Short Course on the Basics (3rd Edition)
by Mary Campione, Kathy Walrath, Alison Huml


Prentice Hall PTR
third edition
January 2001
592 pages

Reviewed by Mary Jane Swirski, August 2002
  (7 of 10)


Great book for those who already have some java or C++ exposure. Like the book says, its "a short course on the basics" & it delivers exactly that - the basics. For a greenhorn... I would recommend you get another book.

Discuss book in the Saloon More info at Amazon.com




Processing XML with Java A Guide to SAX, DOM, JDOM, JAXP, and TrAX
by Elliotte Rusty Harold


Addison-Wesley Professional
1 edition
November 2002
1120 pages

Reviewed by Matthew Phillips, January 2003
  (10 of 10)


Another, equally appropriate, title for book could be Everything I wanted to know about processing XML with Java, but I was afraid to ask. This book provides very detailed descriptions of all of the above APIs.

The most impressive aspect of this book is organization. It is very easy to use the table of contents to jump right into what you need to learn. The table of contents also includes a list of examples and a list of figures in case you need a brief refresher. The appendix provides a quick reference to all of the covered APIs.

You need to know a little about XML before reading this book, but thanks to the first 5 chapters you only need to know a little. Every topic is backed up with a lot of source code for you to play with. I looked pretty hard to find something negative to say about this book, but there just isn t anything. If you want to learn how to process XML using Java, or need something on your desk to refer back to as necessary, look no further than this book.

Discuss book in the Saloon More info at Amazon.com




Java 2 Enterprise Edition Web Component Developer Exam
by Alain Trottier


Que
unknown edition
November 2002
544 pages

Reviewed by Paul Stevens, January 2003
  (8 of 10)


The author laid out each chapter by stating the objectives, going into the objectives with code and descriptions of each and ending with a review section. The review section consists of a summary, questions and further reading links.

The author takes the approach that the reader has little knowledge of the subject being addressed. So there are explanations about not only the objectives but about subjects relevant to web component development.

There is also a short chapter on developing a plan. The author stresses this importance and lays out a sample plan. This is actually an important step in getting certifications that is often overlooked.

Overall this was a well written book and easy reading. It does a good job of covering the subject and is laid out very well.

The one complaint I have about the layout is that many pages have way too much white space at the edges of the pages. They have a good three inches on the outer margin. This causes some of the code examples to appear crunched and hard to read by forcing multiple lines for what should be one line of code.

Discuss book in the Saloon More info at Amazon.com




Java 2 Programmer Exam Cram 2 (Exam CX-310-035)
by William Brogden and Marcus Green


Que
unknown edition
March 2003
416 pages

Reviewed by Jason Menard, March 2003
  (8 of 10)


Not everyone seeking certification is new to Java and object oriented programming. For more experienced developers, it can often be tedious to wade through a certification guide suitable for the Java beginner. It is this audience that is particularly well served by Brogden and Green's book.

This book is concise. There is little effort wasted in going into more detail than necessary in the explanation of concepts the reader should already be familiar with. What you get is the information needed to pass the exam, and little else.

Among the highlights are test taking tips, handy alerts which stress material likely to be covered by exam questions, where to go to find additional resources, and a tear-out "Cram Sheet" presenting a condensed collection of relevant facts. The book comes with a CD containing practice tests and an electronic version of the text.

Each chapter concludes with a set of sample questions testing the material taught in that chapter. Two comprehensive example tests round out the book. This brings up my only real complaint, which is that the end-of-chapter questions have the answer immediately following each question, instead of in a separate section away from the questions.

If you are an experienced OO or Java developer planning to take the exam, or if you are seeking a companion for another exam guide, this is the book for you. The included electronic version of the book is very much appreciated and something more publishers should take note of.

Discuss book in the Saloon More info at Amazon.com




Logging in Java with the JDK 1.4 logging API and Apache Log4j
by Samudra Gupta


Apress
1 edition
April 2003
336 pages

Reviewed by Thomas Paul, May 2003
  (8 of 10)


This book covers the two most popular logging APIS, the one built in to JDK 1.4 and the Apache log4j. The book starts with a brief introduction to logging and why we should care about it. The rest of the book is divided into two parts, each discussing one of the two APIs. The final chapter covers best practices and a brief comparison of the two APIs. The sections on the logging APIs are divided into two parts, the first discussing the features of the API and the next discussing how to create your own custom components to extend the API.

The book is very well written. The author does a nice job of combining the discussion with code examples to make the topics clear. He uses UML diagrams appropriately to help the reader understand how a log request flows through the many classes. He clearly explains each of the classes in the logging frameworks and how to properly use them. The discussion of log4j ends with a chapter on the log tag library written for use with JSPs.

Overall this is a very good book. If you are doing no more than very basic logging then this book is probably a lot more information than you need. But if you want to incorporate logging into your development projects in more than just a very basic way or if you are interested in comparing in detail the two APIs, you will find this book useful.

Discuss book in the Saloon More info at Amazon.com



Apress
1 edition
April 2003
336 pages

Reviewed by Mark Spritzler, June 2003
  (8 of 10)


Well I thought I was going to be able to knock down a few trees on the Ranch, and sell them, when I read the title of this book.

Instead, I learned how to implement the two most popular logging APIs for Java. Now they are so very similar, just different names for classes that do identical tasks. However, Log4j has some more features. The book also explains all the different sources, filters, and formatters that you can incorporate in your apps to log when logging is needed, and present the information best needed to be logged.

Now I know what you are thinking, why write a book about logging, I mean the APIs for basic logging are very simple. But throw that thought right out the window or barn. Samudra does a great job of explaining the ins and outs of logging and some best practices.

I would highly recommend this book if you want to learn these APIs. If you already have experience with them, then you might be bored.

If we had .5 point ratings then I would have put this book as an 8.5.

Discuss book in the Saloon More info at Amazon.com




Inside Java 2 Platform Security - Architecture, API Design and Implementation
by Li Gong, Gary Ellison, Mary Dageforde


Prentice Hall PTR
second edition
June 2003
384 pages

Reviewed by Junilu Lacar, June 2003
  (7 of 10)


This book will help you understand what considerations were made during the development of the Java 2 security architecture. You get real insider information since the authors Gong and Ellison have been chief and lead security architect, respectively, for the Java 2 development team. It is concise yet fairly detailed at times, and about as fun to read as the JLS, if you're into that sort of thing. It is not a how-to book so don't expect to find any detailed examples. It only covers the J2SE platform security. Security on other platforms and technologies like J2EE and J2ME are discussed briefly in the last chapter. Even though I wouldn't really go buy the book, I hope Sun makes it available in some form on their website like they did with the JLS because it does have some useful information.

Discuss book in the Saloon More info at Amazon.com




MIDP 2.0 Style Guide for the Java 2 Platform, Micro Edition
by Cynthia Bloch, Annette Wagner


Addison-Wesley Professional
1 edition
June 2003
288 pages

Reviewed by Thomas Paul, July 2003
  (8 of 10)


If you are designing Java programs to run on cell phones or PDAs then you will want to keep this style guide nearby. This will not teach you how to code but it will teach you how to design your MIDlets so that they will be usable. You will find lots of samples of good design and bad design plus plenty of recommendations to help you to write usable MIDlets.

The book starts with some basic guidelines (make your code simple, predictable, and efficient) and a description of the minimum MIDP hardware (tiny screen, limited input, two colors, and little memory). The authors then get into the main focus of the book, designing MIDlets. Starting with screen layouts, they take us through the different items you can place on a screen such as lists, text fields, forms, commands, etc. The focus is not on how to code but on how to make these items usable. The book also covers issues such as push, security, and touch input from the usability point of view.

There is no doubt that this book will be the standard for designing programs for MIDP devices. This book can help you avoid a lot of simple (and not so simple) mistakes that you may not notice until you get to usability testing. You could write your MIDlets without this book but why not save yourself some headaches.

Discuss book in the Saloon More info at Amazon.com




Java Development on PDAs: Building Applications for Pocket PC and Palm Devices
by Daryl Wilding, McBride


Addison-Wesley Professional
1 edition
June 2003
256 pages

Reviewed by Salman Halim, July 2003
  (8 of 10)


The book compares and contrasts development in Java on both Palm and PocketPC PDAs. For each topic covered, the book explains how it's implemented in Palm (MIDP) and how it's done in PersonalJava (PocketPC). Right off the bat, one notices that there is very little difference between standard Java 1.1.8 and PersonalJava; however, Java for the Palm is different (this makes sense, given that most Palm devices have fewer resources).

This is NOT a Java teacher. It covers the API for PDAs and assumes that the reader has enough Java experience to be able to work with statements like "PersonalJava supports the full set of AWT layouts."

One nice touch is that the book doesn't just describe how the reader can write code for each of the systems -- along with going into some detail about what is needed to set up an inexpensive (almost free) development environment on a desktop, the book also comes with (updated and) downloadable Ant scripts to aid in converting code to PDA Jar files: point the Ant build file to your code and it'll not only compile the code for the PDA, but even has a task to create a shortcut to execute it on the PDA (for PocketPC systems).

Recommendation: If you have a Palm, get the book. If you have a PocketPC, see what you can dig up on the Internet first -- if you're stuck, get the book.

Discuss book in the Saloon More info at Amazon.com



Addison-Wesley Professional
1 edition
June 2003
256 pages

Reviewed by Thomas Paul, July 2003
  (8 of 10)


Doing development for PDAs is a bit complex as different PDAs support different J2ME implementations. The two main J2ME implementations available for PDAs are MIDP, which is available on most Palm devices, and PersonalJava, which is available on most PocketPC and Windows CE devices. This book covers both of these implementations and explains the differences in clear and concise language. The book is relatively short at about 200 pages but it covers the material in sufficient depth to get you started in developing for both environments.

The book starts by explaining the different configurations and points out which are available on which devices. After showing us how to create a test environment, the author discusses the coding issues involved with devices with limited memory and speed. The next few chapters discuss developing a user interface, storing data, networking, and accessing web services. The differences between MIDP and PersonalJava are pointed out in each section with plenty of code samples demonstrating these differences.

The book is written assuming a basic knowledge of Java and J2ME. You don't even need a PDA to run the provided code (although how to get your code on your PDA is discussed). The book serves mostly as a tutorial although it could be used as a reference as well. Although there are several books out that cover developing for MIDP, there is very little information available for PersonalJava and for comparing MIDP with PersonalJava. This book fills that slot nicely.

Discuss book in the Saloon More info at Amazon.com




Java Frameworks and Components: Accelerate your Web Application Development
by Michael Nash


Cambridge University Press
1 edition
June 2003
490 pages

Reviewed by Ernest Friedman-Hill, January 2004
  (4 of 10)


Inside this 470-page book is a collection of decent short essays struggling to get out. Unfortunately, in its present state, it contains a wealth of redundant material. Nash begins by spending 55 pages defining frameworks and touting their benefits, and then moves on to another 50 page chapter entitled "Application Frameworks: What do they provide and what are the benefits?" Similarly, two 30-page chapters on the process of choosing between frameworks are separated by an 80 page catalog of synopses of more or less randomly chosen frameworks, libraries, and development tools. This book is badly in need of editing.

Curiously, the chapters in the middle of the book are entirely unrelated to choosing application frameworks. There are long treatises about open source (including over thirty pages of annotated software licenses,) about development methodologies, about design patterns, and even about IDEs. Why all this material appears in this book is a mystery to me; again, an editor could have helped.

The last two chapters of the book, which concern best practices and case studies, are a bit better and certainly more on topic. Readers interested in the Struts, Cocoon, Expresso, or Turbine application frameworks will benefit from the comparative study in the final chapter.

"This book is a practical tool for Java programmers," Nash claims in the frontispiece. I find it hard to imagine a typical Java programmer having much use for this dreary, heavy-handed tome. A manager new to software development might find it of more value.

Discuss book in the Saloon More info at Amazon.com




Java Open Source Programming: with XDoclet, JUnit, WebWork, Hibernate
by Joseph Walnes, Ara Abrahamian, Mike Cannon-Brookes, Patrick A. Lightbody


Wiley
1 edition
November 2003
480 pages

Reviewed by Thomas Paul, March 2004
  (6 of 10)


What a good book this might have been. It isn't awful but it could have been so much better. The premise of the book is to take the "Pet Store" and improve it by using several open source tools. The first part of the book discusses each of the tools with brief explanations and sample code. The second part takes us through the development process showing how to use the tools that were discussed earlier.

The good parts of the book are mostly in the second half. The authors apply each of the tools, explain test-driven development, demonstrate how and when to refactor code, etc. The integration of the different tools is made naturally so that it doesn't seem that the authors are trying to squeeze a tool in just to demonstrate it. The bad parts: this book desperately needs editing, both technical and for grammar. It is very distracting to see so much improper English usage including run on sentences, sentence fragments, and noun-verb disagreement. On the technical side, there are so many errors in the code that I doubt very much will actually compile, let alone run. Typical errors include methods declaring to return a value and not returning anything, closing files before they are used, and using variables that are not declared.

If you are interested in the technologies discussed and can debug the code in the book, there is a good amount of value. But it could have been so much better.

Discuss book in the Saloon More info at Amazon.com




Core Java(TM) 2, Volume II--Advanced Features
by Cay S. Horstmann, Gary Cornell, Cay Horstmann, Gary Cornell


Prentice Hall PTR
8 edition
April 2008
1056 pages

Reviewed by Michael Ernest, May 2008
  (10 of 10)


In my review of Professional Java JDK 6 Edition, I said I didn't think one book could cover so many topics and serve the reader well. This volume is an exception that proves the point.

It is a monster book, easily several months of steady work to get through, and an useful reference afterwards as well. It is well put together, clearly written, methodically presented. I wouldn't put it down if that were possible. The coverage is broad and the examples are interesting. The topics also feel complete, not because they are thorough, but because they leave off right where intermediate-level programmers could work out most details on their own.

I read the first and second editions years ago. I must say this title is a case study in steady, disciplined, tireless improvement and refinement of the original. It's 990 pages, but I haven't come across a useless sentence yet. The authors haven't just added on. They've refined their examples, improved and replaced others. Most importantly, they've realized a format that puts boilerplate and API tables to the side, allowing the reader to focus on the concept at hand. Complete code listings are presented in a way that's easy to pass over in favor of the files available by download.

If you need lots of code work on different topics to urn Java into your fingertips -- and there is no better way to do it -- this book is an excellent choice

Discuss book in the Saloon More info at Amazon.com



Prentice Hall PTR
7th edition
December 2004
1024 pages

Reviewed by David O'Meara, April 2005
  (8 of 10)


I've always been impressed with the quality of the 'Core' series and happily this book is no exception.

My first impression of "Core Java 2, Volume 2 - Advanced Features" (7th Edition) was that the book contained too much information and was too small for the task it had set itself. However it didn't long for me to revise this perception.

Java 5 includes a huge number of new features. This book does its best to expose you to the new features and doesn't give a definitive example for each part, but provides at least enough so you know what they're for and can spot them in the wild. The examples strike the right balance between length and detail so that you're onto the next topic before getting bogged down in the current one. There is a good mixture of code snippets and full source included, though sometimes I felt the excess could have been trimmed for a few of them.

Personally I loved the coverage of Threading, Collections, Security and XML, but there was enough in each chapter to make it worth reading.

This is an excellent resource for any programmer looking for a quality Java 5 text, although you'll want to consider pairing it with volume one if you lack programming experience. Whether you have experience with the features in the new version or not, the depth of information makes it an important book to add to your bookshelf.

Discuss book in the Saloon More info at Amazon.com




Data Crunching: Solving Everyday Problems Using Java, Python, and More
by Greg Wilson


Pragmatic Bookshelf
1 edition
April 2005
176 pages

Reviewed by Jason Menard, July 2005
  (9 of 10)


There exists a set of tasks common to every software developer independent of the type of application developed and the language used. Concisely presenting these tasks to the new developer has always been a problem without burying the hapless soul under a pile of thick texts. The Pragmatic Bookshelf attempts to remedy this situation by giving the developer the knowledge they need to get the job done in a concise and, well, pragmatic format. One of the latest offerings in this outstanding series is "Data Crunching: Solving Everyday Problems Using Java, Python, and More" by Greg Wilson.

The core of programming comes down to data manipulation. This may be parsing XML, reformatting text data, searching a database, or any other number of a host of tasks. Typically, figuring out how to do each of these would require digesting several books in order to just get to the nuts and bolts of simple operations. "Data Crunching" fills this hole by concisely presenting the minimum amount of information required to get the job done. Just the information you need to know to get rolling, without all the fluff.

There are chapters on manipulating text files, XML documents, binary data, and relational databases. Included is a nice chapter on regular expressions, as well as a chapter on various "glue" topics relevant to solving data manipulation problems. Each chapter examines the tools and methods used to successfully manipulate the format of data being discussed. The examples used, and the book is chock full of them, are practical and relevant to the problems most often faced by developers. The examples are clearly illustrated and easy to follow.

Wilson does a fine job of presenting things in the "pragmatic" style that readers familiar with other books in the series have come to know. Each chapter stands well on its own, so the book may be used as a reference, although it's concise and a pleasant enough read that it's also worth reading through once. Great for the new developer who hasn't yet gotten his feet wet with data manipulation, yet also a nice reference for those who have been around the block a bit more, "Data Crunching" makes a fine addition to the Pragmatic series and is definitely worth having on the bookshelf.

Discuss book in the Saloon More info at Amazon.com




Java EE 5 Development using GlassFish Application Server
by David R. Heffelfinger


Packt Publishing
1 edition
September 2007
424 pages

Reviewed by Jesper de Jong, December 2007
  (9 of 10)


GlassFish is Sun's open source Java EE application server. It's the reference implementation for the Java EE standard. This book is about GlassFish version 2.

The book starts with a chapter about downloading, installing and configuring GlassFish, followed by nine chapters in which the major Java EE 5 technologies and APIs are explained: servlets, JSP, database connectivity using JDBC and the Java Persistence API, JSTL, JSF, JMS, security, EJB and web services. Chapter 11 goes beyond Java EE and describes facelets, Ajax4jsf and Seam. Finally there are two appendices, about sending e-mail from Java EE applications and about IDE integration (NetBeans and Eclipse).

The book is aimed at Java developers with some experience who want to learn Java EE using GlassFish. The book moves at a fast pace, and gives a good overview and some examples of each of the Java EE APIs. It's not a reference manual that describes the APIs into every detail. Because Java EE is so extensive and the book moves so quickly, I can imagine that it can be overwhelming if you've never seen Java EE before.

The book is really focused on Java EE programming, it does not cover setting up and configuring GlassFish in detail, nor does it cover advanced topics such as clustering and high availability.

I would recommend this book to Java developers who want to learn Java EE. It's a good introduction and gives you a good overview of what Java EE is and shows you by example how to program with Java EE. After this book, you'll want a reference manual that goes into all the details.

Discuss book in the Saloon More info at Amazon.com




Kicking Butt with MIDP and MSA: Creating Great Mobile Applications (Java Series)
by Jonathan Knudsen


Prentice Hall PTR
1 edition
January 2008
432 pages

Reviewed by Mark Spritzler, December 2008
  (9 of 10)


When it comes to MIDP and J2ME books, there is no better author than Jonathan Knudsen. It was about 4-5 years ago that he published his first J2ME book, and it was that book that I learned J2ME very quickly.

Jonathan is one of those writers that can break down a technology to its simplest parts and then explain it to us so that we get it quickly.

In "Kicking Butt" Jonathan does it again. Keeping us up to date with the latest developments of J2ME. It is great to see him back with this new book to teach the next generation of J2ME developers.

The only thing I wish I saw was the part about device manufacturers not implementing specs 100% and making some parts of J2ME (Bluetooth comes to mind) a heck to work with and figure out what is wrong, when it comes down to a company not implementing the Spec completely, but claiming it does.

More info at Amazon.com




Stripes: ...and Java web development is fun again (Pragmatic Programmers)
by Frederic Daoud


Pragmatic Bookshelf
1 edition
October 2008
396 pages

Reviewed by Ulf Dittmer, January 2009
  (8 of 10)


Web application frameworks are a dime a dozen these days, so any new one faces an uphill battle for adoption. This book explains why - when choosing a web framework next time - you might want to take a long, hard look at Stripes.

The book starts with a simple example that shows all major parts of Stripes in action, just to give the reader a feeling for how things are wired together (although there's not much wiring to do). For the remainder of the book, one application is developed from scratch (a web-mail front-end), adding features step by step, thereby making use of more and more of Stripes' features.

The major aspects of all web applications are handled early on: creating and handling forms using JSP and JSTL, form parameter to Java object binding, validation, error handling, implementing MVC, dealing with I18N, and how to reuse common layouts. Further chapters deal with unit testing with mock objects, integration with other frameworks like JPA and Spring, using Stripes as an AJAX back-end, and web application security. A chapter on how to tap into Stripes' inner workings shows how to customize its operation, in the event that should ever become necessary.

I found the author's style very approachable, explaining each new concept with examples of when it might (or might not) be advantageous to use. At each step a new version of the web mail application was at hand that demonstrated how the newly introduced concepts improved on the previous version (all the code is downloadable from the book's web site). Overall, I commend the author on the book. After reading it I have a good feeling for all the things Stripes can do to make developing web applications easier and - yes indeed- fun again.

Discuss book in the Saloon More info at Amazon.com




JavaFX Script: Dynamic Java Scripting for Rich Internet/Client-side Applications
by James L. Weaver


Apress
1 edition
October 2007
200 pages

Reviewed by Ulf Dittmer, February 2009
  (5 of 10)


JavaFX Script ("JavaFX" henceforth) is a new way to develop client-side Java GUI applications, comprised of a more declarative code syntax, and some new ways to couple behavior to code. That being the case, it (and by extension, this book) has two audiences: developers proficient in Java who want to learn about JavaFX, and web developers interested in building rich client applications who may not know much (or any) Java.

Falling into the first group, this reviewer thinks neither group is well served by the book. Java developers don't need much introduction to basic concepts; they'd be better served by comparisons between how things are done in plain Java, and how they are done in JavaFX, plus an overview of the new features JavaFX brings to the table. Neither is included in the book. Non-Java developers will struggle when trying to understand Java syntax and concepts, JavaFX concepts and parts of the Java class libraries all at once.

Most of the book is taken up by presenting various JavaFX concepts using a single medium-sized example GUI application (that builds word search puzzles, although that's really besides the point). Where some concepts don't fit that application, small additional examples are used. This does help in understanding what's going on, since the code can simply be run, and the effects of certain constructs be observed, if the text leaves something unclear.

Discuss book in the Saloon More info at Amazon.com




Seam Framework: Experience the Evolution of Java EE (2nd Edition) (JBoss Series)
by Michael Juntao Yuan, Jacob Orshalick, Thomas Heute


Prentice Hall PTR
second edition
February 2009
504 pages

Reviewed by Christophe Verre, April 2009
  (9 of 10)


"Seam Framework: Experience the Evolution of Java EE, 2nd Edition" reads like a tutorial, and a very good one. It is neither too short, nor too detailed, just enough to make you understand the logic behind Seam. Chapter 1 to Chapter 11 introduces Seam's core capabilities. This framework offers so much to ease web development that it is sometimes difficult to cope with all its features. The authors have kept explanations straight, to prevent the reader from scratching his head all along. These eleven chapters are very well structured, reusing the same little sample and improving it bits by bits.

Chapter 12 to 18 introduce web components and other web related features like bookmarkable web pages or security management. Chapter 19 to 21 tackles with Ajax support in Seam, mainly explaining how to use different kind of libraries supporting Ajax. The rest of the book deals with many different interesting topics like rule-base security, jBPM, testing, performance tuning, Web Beans and much more.

Each chapter is accompanied with a ready-to-use sample, which is downloadable at the authors' web site. I like the fact that the authors did not put to much stress on seam-gen, and use their own small samples to illustrate each chapter. I also like the fact that the authors didn't try to overload the reader with loads of details, redirecting readers to the official documentation when necessary. In the chapters about seam's core, they basically introduce a problem, how seam helps to solve it, how it is done using annotations, and how it can be done using an XML descriptor file. This is a very good book, which can be read very smoothly.

More info at Amazon.com




Sun Certified Enterprise Architect for Java EE Study Guide (2nd Edition)
by Mark Cade, Humphrey Sheil


Prentice Hall
second edition
February 2010
216 pages

Reviewed by Jeanne Boyarsky, September 2010
  (9 of 10)


I read the Cade & Sheil study guide in preparation for the SCEA 5 exam. The book is short; only 189 pages; but contains a lot of info. What struck me was how little of the content was obscure. It serves as a good plan for studying/reviewing. I used it for reviewing since the content wasn't new. Most of the book covers the part 1 objectives along with sample multiple choice questions. The rest is for parts 2 and 3. I liked the notes about what differs in practice and the answer explanations about the exam creators think.

I didn't like the sample questions format. It was way too easy to see the correct answer while looking at the question making it difficult to see where you stand. It would have been nice to have them on a different page or in an appendix. Also, one of the answers was wrong. This is obvious from reading the answer explanation of course. I also felt the "background reading" sections were too thorough. It says the successful candidate must read the EJB spec. This is malarkey. The successful candidate must have a high level view of EJB rather than know every detail of the spec.

When I read the book, I thought the questions were too easy. After taking the exam, I can say they were spot on in difficulty. Overall, I do recommend the book. It served its purpose well "to be a concise guide to getting ready for the exam".

Discuss book in the Saloon More info at Amazon.com




Java Application Architecture: Modularity Patterns with Examples Using OSGi
by Kirk Knoernschild


Prentice Hall
1 edition
March 15, 2012
384 pages

Reviewed by Amit Ramchandra Ghorpade, December 2012
  (7 of 10)



When we speak of architecture of Java applications, be it desktop or web, we start with the high level specifications, impart service level or functional patterns and move on to the UMLs.
I have rarely seen any design worrying about modules in the system since we take for granted that our design decouples them implicitly.
This book was my first encounter with modules with Java and I was surprised to read the importance of modularity in Java applications.
The first section introduces to the modularity concepts. If you are already familiar with them, you can directly head to patterns in section 2 after taking a brief look at chapter 7.
The section 2 on patterns is divided into types of patterns making it easy for the reader to focus on what exactly he needs.
Most of the base patterns stuff I believe is imparted by the design itself, even if its not given special treatment. Module facade was a totally new thing for me, I always thought facade is meant for some service.
The next section talks of OSGi, which was interesting again because my view of OSGi was that its more into services.
To put it together it is a good book, with real world examples for novice through intermediate readers and a handy reference for experts. One go-through of the book will certainly bring up better designs and add another facet to the application architecture.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com



Prentice Hall
1 edition
March 15, 2012
384 pages

Reviewed by Mohamed Sanaulla, January 2013
  (8 of 10)



This book consists of two parts:
1. Deals with the basic concepts related to modularity
2. Patterns dealing with modularity.

The book deals at the architecture level and the patterns described therein are more suited to building a good architecture and also a great class design.

The first part deals with building the base for understanding the patterns described in the later part of the book. It doesnt require any prior experience in OSGi and there are around 2 chapters which are very specific to OSGi. The patterns are well described and each has a description, consequences, sample implementation of the pattern.

The content is quite easy to understand and all the concepts are very well depcited using informative images.

I would not recommend this book for someone not well versed with basic OOP concepts, code level design patterns. If you have quite a bit of experience and are in a mid-senior level developer then you can really appreciate the content of the book. And its not necessary for you to read through all the patterns in depth, but its useful if you are aware of what patterns are available so that you can refer to it when ever required.

In short this book tries to bridge the gap between architectural design and the class level design in Java based applications.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com




Core Java, Volume II--Advanced Features (9th Edition) (Core Series)
by Cay S. Horstmann, Gary Cornell


Prentice Hall
9 edition
March 2013
1152 pages

Reviewed by Mohamed Sanaulla, May 2013
  (9 of 10)



I always liked the approach Cay S. Horstmann takes in the examples in his Core Java books. He tries to follow good practices in all his examples which includes better naming convention, documentation and comments, identifying right classes. This book, Core Java Volume-2, is no different. You find examples which are in themselves mini applications. You dont find toy programs which illustrate the feature and do some printing on the console. The examples themselves include different concepts across Java.

There are very interesting topics covered in this book like: Steams and Files, XML processing, JDBC, Network Programming, Scripting and Annotations, Security, JNI, Advanced Swing and AWT. I see that few chapters which were originally in Volume-2 have been moved to volume-1 namely multithreading and collections. I see a very exhaustive coverage on Swing and AWT, what I feel missing is the coverage of JavaFX features for which I think a chapter would suffice. Not to forget this book covers the Java 7 features as well.

Otherwise this book covers lot of stuff and I would recommend to use it as a reference to pick chapters as and when you want to explore those features. Reading end-to-end may not be necessary because most likely we would not be using all of those features in one place together. Reading end-to-end might be an overkill as well owing to the number of pages.

Bottom line: Highly recommend book in your bookshelf of Java references.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com



Prentice Hall
9 edition
March 2013
1152 pages

Reviewed by Campbell Ritchie, September 2013
  (9 of 10)



I would always advise readers to try before they buy; look at the contents and sample pages on Amazon or similar. There you will find you get 1117 pages, 115 more than in my 2005 edition. That's even more of a change when you remember the threading chapter moved to Vol I. That extra space is full of information, in the inimitable Horstmann & Cornell (H&C) style. They teach object‑oriented programming throughout, with good coding style and emphasise correctness. The book has been updated and uses Java7 constructs throughout, even though the odd use of StringTokenizer escaped updating. And GridBagConstraints appears once instead of GBC (see volume I).
This book makes no pretence to comprehensiveness. There is relatively little about servlets, for example, and no design patterns; as I said about Vol I, they assume readers know patterns already.
The points for C++ programmers still appear; they are interesting but only of relevance to people coming from C++. Those points are probably important because there are many points where the apparent similarities between the two languages obscure differences.
I found the chapters about security and native methods particularly interesting.
The index is comprehensive. There are suggestions for further reading, e.g. about advanced graphics. When H&C are unhappy about something in the Java? platform, they say so without hesitation (policytool is criticised on page 833).
The only weakness I perceive is the lack of a proper bibliography, which I believe would enhance this book greatly. There is one place where it looks as if a reference had been forgotten.
Still, H&C has been a favourite of mine for a long time, and remains a favourite.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com




Sun Certified Programmer & Developer for Java 2 Study Guide (Exam 310-035 & 310-027)
by Kathy Sierra and Bert Bates


McGraw-Hill
1 edition
December 2002
752 pages

Reviewed by Jessica Sant, December 2002
  (10 of 10)


Imagine this: you're in college, studying for the final exam -- and the teacher gives you all of her notes that spell out EXACTLY what you need to know, what you DON'T need to worry about, and even points out all the little traps she'll try to catch you in when you take the exam. Kathy Sierra, the co-developer of the 310-035 Programmer's exam, with the help of Bert Bates has done just that. The 3rd edition of Osborne's Sun Certified Programmer and Developer for Java 2 is an awesome book. Get this -- it's actually entertaining to read, very easy to understand, and the mock exams more closely resemble the real thing than any other mock out there. The "Two-minute Drills" are an excellent resource to help you review before you take the exam. The Exam Watches interspersed throughout the chapter point out all the traps you might fall in during the exam, and the On The Job blurbs give you a practical application for the knowledge you just learned. The end chunk of the book discusses what you need to know to pass the Developer s exam. It won't teach you Swing or Threads - but what the exam assessor's are looking for - the things you need to pay attention to in order to pass that exam. I fully recommend this book.

Discuss book in the Saloon More info at Amazon.com




Java 2 Developer Exam Cram 2 (Exam CX-310-252A and CX-310-027)
by Alain Trottier


Que
unknown edition
August 2003
480 pages

Reviewed by Andrew Monkhouse, October 2003
  (6 of 10)


This is potentially a good book for SCJD candidates, however it fails in a number of key areas.

The major problem is that this book was published in September 2003, however it is written for an assignment that Sun have not issued to candidates since April 2003. This means that the book does not touch on two important aspects of the newer assignments (raw file I/O and executable jar files), plus some of the suggestions in the book are explicitly disallowed in the newer assignments.

There are also a number of problems with the sample code provided in the book. In particular the locking code is faulty (worth 20% in the assignment), the server code does not match the requirements of the locking code, and the example of thread safe code isn't thread safe. Also, although sockets were described in detail as being one of two ways of meeting the assignment requirements, object serialization over sockets (required if you use sockets in the assignment) was not described. Hopefully these will be fixed in the errata, however at the time of review there was no errata page, and the author was unaware of these issues when I raised them with him.

On the positive side, the author provides information on areas where candidates often go beyond the specifications, although making it clear that such work is unnecessary. Also the author provides a good introduction to the ancillary work developers must do - the application analysis and design.

Discuss book in the Saloon More info at Amazon.com




IBM Rational(R) ClearCase(R), Ant, and CruiseControl : The Java(TM) Developer's Guide to Accelerating and Automating the Build Process
by Kevin A. Lee


IBM Press
1 edition
June 2006
384 pages

Reviewed by Jeanne Boyarsky, July 2006
  (8 of 10)


"IBM Rational ClearCase, Ant and CruiseControl" walks the reader through setting up automated builds. It is useful if you are doing exactly what the book discusses. In particular, you should be using all three of these technologies and want to do standard builds.

The concepts were excellent. There was a strong emphasis on understanding the terminology. For examples, configuration management and build terms were clearly discussed. The roles involved were also described.

The author introduces code as constructs/idioms rather than as syntax. He calls these "best practices." I don't think of them as best practices, but the idioms are very useful in getting started quickly. Due to this approach, the book doesn't offer much instruction on customization.

The coverage of ClearCase was very thorough. The book includes both the Base ClearCase and ClearCase UCM. Ant and CruiseControl were covered enough to automate a standard J2EE build with ClearCase.

This book will save you a lot of time in getting an automated build working if you haven't used the technologies before. It supplements the materials available on the web nicely.

Discuss book in the Saloon More info at Amazon.com




OCP Java SE 6 Programmer Practice Exams (Exam 310-065) (Certification Press)
by Bert Bates, Katherine Sierra


McGraw-Hill Osborne Media
1 edition
January 2008
448 pages

Reviewed by Jeanne Boyarsky, December 2010
  (9 of 10)


Disclosure: I was one of the tech reviewers of this book so I'm probably biased. I'm reviewing it anyway and saying *why* I liked things.

1) Lots of questions
2) Clear explanations
3) Advice on how to study
4) Similar looking problems that test different things so your brain doesn't memorize "the answer is 'a' as fast"
5) Harder questions than are on the test and a mapping to to how it would relate to an actual score.

Note this is not like the thick SCJP book that is a study guide to the exam. This book is virtually all practice exams.

Discuss book in the Saloon More info at Amazon.com




OCA Java SE 7 Programmer I Certification Guide: Prepare for the 1ZO-803 exam
by Mala Gupta


Manning Publications
1 edition
January 2013
375 pages

Reviewed by Jeanne Boyarsky, January 2013
  (8 of 10)



"OCA Java SE 7 Programmer I Certification Guide" is Manning's book for developers looking to get the new entry level Java certification.

I wouldn't use this book to learn Java; I'd use it as a second Java book to get ready for this exam. (Nothing wrong with this - the book doesn't claim to teach you Java. I only mention this so you have proper expectations. I actually like when a book separates objectives between teaching from scratch or exam prep.)

The book comes with mock questions after each chapter and one full mock exam. There are also "twist in the tale" exercises sprinkled throughout the book which get you to realize how small changes to the code can change the behavior of the code.

The explanations are clear. Analogies prevent you from getting bored. There are great diagrams throughout the book.

Overall, I think the best test of a cert book is whether it prepares you for the test - this book does.

Disclosure: I will be receiving a copy of this book from the publisher in exchange for being the technical proofreader for the book.

Discuss book in the Saloon More info at Amazon.com



Manning Publications
1 edition
January 2013
375 pages

Reviewed by K. Tsang, July 2014
  (9 of 10)



Already a Certified Java Programmer (OCPJP), I used this book as a refresher before I studied for my Java 7 upgrade. The book reminded me the basic concepts like the "protected" access modifier or method overloading and overriding, things a programmer uses without realizing it.

Gupta described the topics very logically making it easy to understand and follow. There are 2 things I really liked about the book. The first is the cartoon graphics showing the humor side of the code in discussion (for example try-catch-finally). Another is the Twist in the Tale exercises enabling the reader like myself to stop and think how one minor change can affect the consequence or output of the code.

Since I used this book as a refresher, but to any OCAJP7 aspirants I recommend using this book as their study guide. It has lots of sample code and detailed explanations to questions. Exam objectives are carefully discussed in the correct chapter.

At the end, I didn't feel reading a "study guide" but actually it is.

Discuss book in the Saloon More info at Amazon.com




Java Coding Guidelines: 75 Recommendations for Reliable and Secure Programs (SEI Series in Software Engineering)
by Fred Long, Dhruv Mohindra, Robert C. Seacord, Dean F. Sutherland, David Svoboda


Addison-Wesley Professional
1 edition
September 2013
304 pages

Reviewed by Jeanne Boyarsky, October 2013
  (9 of 10)



This book is a successor to "The CERT Oracle Secure Coding Standard for Java." My biggest gripe with that book was that many of the rules didn't pertain to security. This book was named "Java Coding Guidelines - 75 Recommendations for Reliable and Secure Programs." I like this title much better. Both runtime reliability and maintainability are considered. It's the same authors and style so many good things carry over.

Many of the rules are new including security ones such as XPath injection. The book itself is shorter, but I felt like the picked the most important things to concentrate on. I also found this book easier to read than the predecessor. The CERT specific parts are gone like the severity/likelihood/remediation cost/priority/level. I think this is in recognition that something can be important without being an attack.

I still think the code examples could have been a little clearer. Maybe highlight the differences between the two in longer snippets. I found myself underlining this in pen as I red. Bold would have helped.

I particularly liked the real life example in showing how Oracle themselves fixed some of the vulnerabilities in version 7 of the JDK.

The focus is on core Java (not JEE/web). There are still rules about threading, but not as prominently as the previous title. Overall I think either title is a worthwhile addition to the bookshelf. I slightly prefer "Java Coding Guidelines" to the first edition/CERT title.

---
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.

Discuss book in the Saloon More info at Amazon.com

 
The Bunkhouse administrator is Ankit Garg.