Amazon.com Customer Reviews
Great for updating your knowledge of Java's new features - Review written on November 18, 2005
Rating: 4 out of 5
1 customer found this review helpful.
This book was never intended to teach newbies the Java language version 5.0. Its purpose is to teach those features of Java 5.0 that are completely new to the language to veteran Java programmers. This is very helpful to those of us who already know Java and do not want to invest in an $80 1200 page tome that will teach the entire Java language to us once again. The book consists of 10 chapters:
1. What's New
2. Generics - Generics provides a way for you to communicate the object type of a collection to the compiler, so that it can be checked.
3. Enumerated Types - Java gets linguistic support for enumerated types beyond the int Enum pattern. In their simplest form, these enums look just like their C, C++, and C# counterparts, but they are far more powerful.
4. Autoboxing and Unboxing- This pertains to a more straightforward way of inserting and removing objects from a collection using their true object notation.
5. varargs- Previously, a method that took an arbitrary number of values required you to create an array and put the values into the array prior to invoking the method. This new feature automates and hides the process.
6. Annotations -A metadata facility that permits you to define and use your own annotation types. Annotations do not directly affect program semantics, but they do affect the way programs are treated by tools and libraries.
7. The for/in Statement - often called either "enhanced for" or "foreach" is largely a convenience feature in Java 5.0.
8. Static Imports - The static import construct allows unqualified access to static members without inheriting from the type containing the static members.
9. Formatting - An interpreter for printf-style format strings has been added.
10. Threading - There have some been some major advances to the design of threading in Java.
Each chapter explains the new concept that has been introduced to the language and shows the reader how to incorporate that feature by showing actual code. As other reviewers have pointed out, there are a moderate amount of typos in this book. Some are just cases of spelling errors where it is obvious what was really meant, but some are in the code itself and impede understanding of the concepts being taught. Overall, though, I am a fan of the Developer's notebook series and I think that it works well for showcasing Java's new features. I just wish more care would have gone into the editing process.
Excellent! OK, a couple goofs. But still... - Review written on July 20, 2005
Rating: 5 out of 5
1 customer found this review helpful.
The bad news first; Yes, there are some technical flaws in the production of the book. There's about a page worth that looks like it was exactly duplicated three pages later (very confusing - for about 30 seconds I had thought I'd lost my mind or become supernaturally prescient), and there are some missing parentheses at a couple places. But these are minor and forgivable, considering the positives!
The tone of voice and the balance of text with code is just perfect for we Java developers who get frustrated with books that either talk down to us like we're in kindergarten, or talk in that crazy "uber-guru-shorthand-speak" that leaves our eyes glazed over waiting for the explaination OF the explaination.
This book is not for the out-of-the-gate beginner who trying to learn the basics of the langauge syntax or of object-oriented concepts. But beginners should NOT FEAR this book. Once you've got the basics, the information presented in this book is immediately useful, and is by no means reserved for the expert (but is certainly required if you want to BE an expert, or work with experts).
The focus of this book is on getting intermediate and expert java developers up to speed with many of the language changes that come with the Java 5.0 release. While it dabbles a little in a few of the new classes, it is not meant as a class reference. It is meant more as a distillation of many of the key changes to the basic structure of the Java syntax. The class reference aspect is very intentionally left to thick, dry books like "In a Nutshell".
This book never gets heady with theory or philosophy, nor does it get bogged down in details. I'll admit, annotations of annotations hurt my brain a bit, and the long class/method names in the new Threading scheme made it difficult to take it all in quickly, but that's not the fault of this book's author. Indeed, even during the descriptions of things that were totally new to me, I repeatedly found myself asking "What about..." only to have THAT EXACT QUESTION asked and immediately answered in the very next paragraph. Usually when an author tries to anticipate like that, they come off as sounding schizophrenic.
This book, and its format/tone of voice is a dream come true! Now if all development texts were as easy to learn from as this one, we'd REALLY have something!
Dang good job, Brett (and David)! But please consider hiring a [better] copyeditor for future efforts - and I hope there are many!
Good Overview - Review written on April 24, 2005
Rating: 4 out of 5
This book is part of O'Reilly's Developer's notebook series. These books are short and to the point, because the book explains the "what" and not the "how" and "why." If you want long explanations and concept diagrams this is not that type of book. This book provides examples to make the new technology work.
The authors explain all the new features added to the Java language in version 1.5. The book has ten chapters that each shows a new feature added, for example autoboxing, enumerated types, annotations, etc. Each chapter provides working example that demonstrate the new feature. Everything that is introduced has a "How do I do that?" section, which show you how to use the new feature. Because of the style of book, some explanations will not provide enough detail to help you master the subject. The chapter on threading is not enough for a developer to understand the concepts, but is enough to start using some of the java.util.concurrent classes.
This book is very good at what it is written for, to quickly get an experience developer running with the new language features. This should be treated as a starter book and other books would be needed, if a greater understanding of the subject is needed.
A good overview - Review written on April 19, 2005
Rating: 4 out of 5
2 customers found this review helpful.
I found this book very interesting and I hope to continue to use
it. First, the positives. It provided a good survey of the most
important new features in Java 1.5. Some of the examples were
quite detailed and very useful, and it is good to have all the new
features collected together into one place. It will also provide
a place to quickly look up the syntax for some of the new
features, especially Generics, Enums, and Formatting.
On the downside I didn't really like the tone of the book - I got
fed up with seeing "cool" all over the place. I also don't
understand the intended audience for the book. It is too advanced
for beginning Java programmers, and yet it doesn't contain enough
detail for advanced programmers. The section on Threading was
especially lightweight. Doug Lea's Concurrency book (from which
all of the new support for multithreading in Java 1.5 is derived)
is an extremely dense and difficult book. Any attempt to try and
cover the material in a few pages is unlikely to meet with much
success. This chapter was good for advertisement: "here are some
new classes" but not much else.
In summary, this is a good overview of the new features in Java
1.5, and useful as a reference for many of the features. I would
recommend it to any intermediate Java programmer who wants to get
up to speed quickly. However, it is not intended as a reference,
so do not expect to get one!
Great introduction - Review written on April 08, 2005
Rating: 4 out of 5
This is my first purchase in the Developer's Notebook series, and I was pleasantly surprised. The text is concise and easy to read. And, the brevity of the book (less than 200 pages) made it one of the few technical books I read cover to cover. I read it sort of like a novel (I'm not that into running the examples in code), and for most if it, I ate it all up. It enabled me to begin using JDK 5.0 features quickly one of my current projects, and it's useful when I've forgotten a bit of syntax.
On the downside, I'm usually interested in the "why" and "how", even if it's not as important as the "what". So, often I found myself wanting to know more, and in some cases I thought the authors excluded some information that really should have been there. Granted, this may be more of an artifact of the series itself than this particular book.
Many of the examples in this book are shared in O'Reilly's Java in a Nutshell, and this book always points that out. After a while, I began to wonder why they couldn't come up with more examples that are unique for this book. I also began to think that they were trying to promote Java in a Nutshell a bit too much, and that in some ways they were sort of cheating by duplicating material in two different formats. Since this short book is still relatively expensive, I found the duplication of material somewhat annoying.
Overall, I'm very happy with this book, though. Ultimately, I might still buy a more complete reference, but at least now I know enough to get started!
Would NOT recommend buying this edition now - Review written on April 04, 2005
Rating: 4 out of 5
1 customer found this review helpful.
Though it probably was a hit in June 2004, I would NOT recommend buying this book now. It contains some valuable information for serious developers and is easy and fun to read indeed, but:
1. Too many typos in the text. One essential section about threading is even completely lost, substituted by the text from another section due to misprint, which makes the whole chapter hard to understand. Looks like nobody at O'Reilly got a chance to read the book and look up for errors before it went to print. If somebody did, I would fire that person right away as incompetent.
2. The coverage of the material is far from completeness. If you want to just grasp new Java 5 features, go for free to
http://java.sun.com/j2se/1.5.0/docs/relnotes/features.html.
In particular, an excellent free article at
http://java.sun.com/j2se/1.5/pdf/generics-tutorial.pdf
contains 5 times more information about generics, invaluable for those who really want to understand what's going on, and why, and how to work with it.
3. Brett took a great effort to make this quite complex material easy to read, probably trying to widen the audience, but I personally prefer the style of the "Java in a Nutshell" tutorials, as twice more informative per page of text.
So now, in 2005, I would either wait for a new corrected and extended edition of this book, or try to find another one. Still four stars, just in comparison to other books on the topic.
Fascinating but flawed - Review written on January 26, 2005
Rating: 4 out of 5
22 customers found this review helpful, 2 did not.
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.
The best, for now - Review written on January 06, 2005
Rating: 5 out of 5
6 customers found this review helpful.
Who: You. You already know Java. In fact, you silently snicker at most people who say they "really know Java," because they don't - not like you do.
Why: Java 1.5 is really different. Not just enums and boxing/unboxing, it has type-safe varargs (who'd've thunk it!), last-chance handlers for threads, the most comprehensive generic mechanism I'm seen, and more. You need to know what's new, and how to use it, and fast.
What: This book. It won't help the Java newbie. It's just the new features, spelled out in detail. Better yet, they're spelled out in code samples. This doesn't so much tell you what's new, it shows you.
Where: Here. Until the next generation of Java books hits the shelves, your alternatives are this and the language spec. Believe me, you don't want the language spec.
When: Now. This book will probably look old fast, once the more polished, friendly, and tutorial texts come out. It's a great quick-start on the new technology, though, and (see "who" above) you can't wait.
I hope O'Reilly keeps coming out with new titles in this series. I give it five stars now, but probably two a year from now. As I said, though, this book is for !right!now! and does a great job of what it does.
//wiredweird
Clear, no BS presentation of the new C++ in Java ;) - Review written on December 09, 2004
Rating: 5 out of 5
15 customers found this review helpful, 1 did not.
This notebook series is a very good aid for the experienced developer who wants to play with some new feauture in the company of an even more experienced fellow who has done most of the research for him. Stay far from this one if you need to learn Java from scratch. (Go for one of the many excellent intro books by Ivor Horton or Cay Horstmann). Not surprisingly this book is one of the best in the series, being mostly the effort of Brett McLaughlin who, besides being a talented coder and writer is also the man behind the O'Reilly "developer notebook idea". In about 150 pages you will get plenty of working examples and clear, concise explanations on the new features of "Tiger": generics (templates), varargs, annotations, autoboxing etc .. If you are a serious Java developer you cannot miss on these new features, and have no excuse for doing it since now you can bridge this gap with just a few hours of reading on a train. And if you are an old school C coder who grudgingly had to pass to Java for "marketing reasons".. I have great news for you.. believe it or not, we got printf back! ;)
This is a great book in a new O'Reilly series... - Review written on August 10, 2004
Rating: 5 out of 5
2 customers found this review not to be helpful.
I got my first experience with a new O'Reilly series... The Developer's Notebook. This notebook is the Java 1.5 Tiger Developer's Notebook by Brett McLaughlin and David Flanagan. This is a great book and a nice concept sure to become a favorite with developers.
The chapter breakdown: What's New?; Generics; Enumerated Types; Autoboxing and Unboxing; varargs; Annotations; The for/in Statement; Static Imports; Formatting; Threading; Index
As you can see, this is not a Java tutorial or a broad overview of the Java language. It is a practical focus on the new features in Java 1.5 (codenamed Tiger), and it skips the fluff and takes you right into hands-on stuff. The concept of a "developer's notebook" is that it's a place to record observations and take notes. It goes to the meat of the subject. The book is printed on paper that has a graphed background, and there are "handwritten" notes in the margin to point out additional facts. Conversational in tone, you are walked through how each of the new features work as well as what you would use them for. Each chapter has a number of "How do I do that?", "What just happened?", and "What about..." paragraphs that quickly guide you into understanding each new feature.
For instance, the for/in language feature is covered nicely. The authors show you how it is a nice replacement for the Iterator class. But rather than stop there, they tell you what the pros and cons of the feature are.... When you'd want to use it instead of an Iterator, and when an Iterator is the only way to get what you're looking for.
I liked this book a lot. I'm looking forward to more books in the Developer's Notebook series. It might end up being the best series for getting into a subject quickly without wading through a lot of fluff or hard-to-follow jargon.
Quick learning about 1.5 - Review written on July 10, 2004
Rating: 4 out of 5
5 customers found this review helpful, 7 did not.
Java 1.5 has started to emerge into general usage. But most of us Java programmers are still safely ensconced in 1.4. Not a few are undoubtedly wondering what the big deal is about 1.5. If you're like me, you are probably quite satisfied with 1.4.
Well this book quickly attempts to change that opinion. It hits all the new stuff, with simple descriptions and example code. Like autoboxing. Nothing deep about this, to say the least. But it really eliminates a lot of visual clutter in your source code, when you have to go between a primitive and its wrapper type. It is the analog of how you can do (eg) System.out.println(' t='+t+' d='+d); where t and d can be any primitive types, and the jvm figures out the printing for you. You don't have to specifically describe the output format for each type, as you have to in C. The wonder about autoboxing (and its inverse) is that it was not introduced way earlier. Well, anyway, you have it now.
Long time C programmers will also welcome varargs, which are variable argument lists. Ever since Java came out in 1996, many asked for this ability. This push has gone on for years. Finally, they scored and we have varargs.
Other 1.5 changes are covered. But the above should be enough to give you a flavour of what the book offers.