Books & Tools Techniques

Comprehensive coverage of Ruby 1.8 and 1.9

"The New Most Important Ruby Book"
Peter Cooper,
rubyinside.com

Completely updated for Ajax and Web 2.0

"A must-have reference"
Brendan Eich,
creator of JavaScript

Jude

Jude is my Java documentation browser. It combines Sun's definitive javadocs with the easy-to-use format of Java in a Nutshell, and tops it off with easy keyboard-based navigation and full-text searching.

Jude is available for free evaluation.

See the user's guide for more info

Java in a Nutshell

The 5th edition is now out, with complete coverage of Java 5.0!

It includes a fast-paced tutorial on the language, and a compact quick-reference for the core Java API.

Java Examples in a Nutshell

The 3rd edition, updated for Java 1.4

This edition has all-new coverage of the NIO and JavaSound APIs, completely rewritten Servlets and XML chapters, and coverage of new Java 1.4 features (assertions, logging, preferences, SSL, etc.) added througout. A great book for those who like to learn by example. 193 working examples: 21,900 lines of carefully commented code to learn from.

Java 1.5 Tiger: A Developer's Notebook

Amazon incorrectly credits me as the main author on this book. I'm actually the second author: really more of a consultant. This is a good book about all the language changes in the latest version of Java.

Effective Java

I didn't write this excellent book, but I wish I had.

Author Josh Bloch is probably best known for the collections classes in the java.util package. His experience and wisdom are apparent in this book. I learned from it and recommend it highly.

June 30, 2004

-source 1.5 is the default

With early releases of the javac compiler for what is now called Java 5.0, you had to use the -source 1.5 flag in order to get the compiler to handle generics, enums, autoboxing, the for/in loop, etc.

The -source 1.5 option is now the default. I don't know when this changed, but I just became aware of it. If you have code that uses enum as an identifier rather than as a keyword, you'll need to compile it with the -source 1.4 option. And if you have even older code that uses assert as an identifier rather than a keyword, then you can use the (new) -source 1.3 option.

-source 1.5 is still supported, but is not required. Making it the default is a good thing, and not just because it would be disconcerting to have to type "1.5" every time we wanted to compile a Java 5.0 program.

June 28, 2004

5, 1.5, 2

My limited understanding of the version number change (and I'm not at JavaOne to hear how they're spinning it) is that bumping the version number reflects all the changes to the language in this release. I certainly agree that if the Java version number is going to be incremented, this is the release to do it.

The obvious thing would be to go from Java 1.4 to Java 2.0, of course, but "Java 2" means something else. That's what they did the last time the marketing department ran ahead of the engineers....

You'll notice that Tiger's new name is "J2SE 5.0". Not J5SE. I heard this explained like this: J2SE is not released in sync with J2EE and J2ME, so they can't change the 2 in those acronyms.

From what I"ve heard, I'm not convinced that the Java engineers are on board for this version number change. I believe, for example that java -version will continue to print 1.5. This could change, though. I also think that the compiler switch for compiling with Java 5 features will continue to be -source 1.5.

J2SE 5.0

Its the official new name for Tiger. They've dropped the "1." part of 1.5.0 and kept the 5.0. Press release here.

I've known this is coming for months, but I don't really know what it means yet. I believe it is driven by marketing. But does it have more legs than the "Java 2" fiasco? In 6 months will we be talking about Java 5 or Java 1.5? Time will tell, I guess. But I'll have to decide before then what to call it in Java in a Nutshell

June 24, 2004

New Book on Tiger!

I received my copy today of Java 1.5 Tiger: A Developer's Notebook. This is a new O'Reilly book by Brett McLaughlin on which I'm credited as a co-author. Consultant would be a better term, since Brett did all of the writing. I did the research, and gave him draft copies of the material I was working on for the 5th edition of Java in a Nutshell, but Brett wrote all the prose, and most of the example code, too.

This book was sent to the printer in time to be on sale at JavaOne, so you can take a peek at it there, if you're going. Amazon is taking pre-orders for it today, but since I've got a copy in hand, I'm sure they'll start shipping soon. See the link in the left column if you'd like to order it. (If you're reading this through the permalink rather than on the home page, then you won't see the Amazon link.)

If you're looking for a quick introduction to the new language features of Tiger, this might be the perfect book for you. If you've read any of my other books, this one is nothing like it. Brett did the writing, and he's got a completely different prose style than mine. More importantly, this book is part of a new "Developer's Notebook" series from O'Reilly. (Brett is the driving force behind the whole series, actually.) The new series promises "all lab, no lecture", so the books are extremely task-driven and code-focused. (To emphasize this, they've made the book look like a lab notebook. The pages have a graph paper background, handwritten notes in the margin and water stains on the first page of each chapter.)

There is a lot of good material in this book, and if you like Brett's approach to covering it, this is a quick (171 pages) and easy way to learn Tiger. Don't judge the book by its back cover, however, or by the series introduction and preface inside the front cover: those sections are heavy-handed promotion of the whole "Developer's Notebook" concept, and they might put you off. You've got to actually read one of the chapters to see if it works for you. O'Reilly has put chapter 3 online, so you can try it out and learn about enumerated types at the same time.

Also, please disregard the second sentence on the back cover. I don't know who came up with the idea that Tiger contains "over 100 substantial changes to the core language". That's just gibberish, and someone should have corrected it before it went to the printer.

Finally, to pique your interest I'll add that the second paragraph of the preface and the second sentence of Chapter 1 both mention something that is supposed to remain a secret until JavaOne. If you can get your hands on a copy before then, you can be in the know while it is still secret. (Hint: notice that I've been refering to this next release of Java by its codename.)

I'll enable comments on this entry, at least until the spammers find it. If you read the book, let me know what you think!

Advertising
About
Store
Search
Google
Web this site
Archives
Syndicate

Powered by
Movable Type