This site uses cookies to deliver our services, improve performance, for analytics, and (if not signed in) for advertising. By using LibraryThing you acknowledge that you have read and understand our Terms of Service and Privacy Policy. Your use of the site and services is subject to these policies and terms.
Hide this

Results from Google Books

Click on a thumbnail to go to Google Books.

Effective Java by Joshua Bloch

Effective Java

by Joshua Bloch

Series: Java Series

MembersReviewsPopularityAverage ratingMentions
937813,875 (4.42)4

Sign up for LibraryThing to find out whether you'll like this book.

No current Talk conversations about this book.

» See also 4 mentions

Showing 1-5 of 8 (next | show all)
This book alone made me a better Java programmer. Period.

* It's presented by items, so no need to read it sequentially;
* Contains a glimpse on the intricacies of the Java language;
* Contains code examples on 'why do this, but not that';
And more importantly,
* You'll probably consider things that never even crossed your mind (or at least, not mine).

* It's geared towards Java 2 and... Java 7 has just came out. In my eyes, it doesn't make it less valuable though.

Even though I just finished the first edition, I'm seriously considering buying the last one. I liked THAT much. ( )
  something_ | May 1, 2015 |
This book not only provides gems of advice for core Java programming but also for programming in general, especially if your code will be provided as an API to other programmers and if it is going to live for more than a few months.

Another interesting aspect of the book is that the more I contemplate upon it, the more it resembles like advocacy for functional programming. At least some parts really made me think like "hmm, that would be considered natural in Scala" (insert your favorite functional programming language here, even if it's not purely functional in the strictest academic sense). The book is also helpful if you've spent long time in high level languages such as Python or Lisp before coming to Java, and are curious about how you can get an approximation of some of their good parts such as optional named arguments.

The foreword of Guy L. Steele, Jr. says it all: after learning the vocabulary and grammar of a language you need to master the pragmatics of it rooted in real life cases so that your communication with other language speakers will smooth flowly. Bloch's book helps you with that effectively and I think every programming language deserves at least one author of Bloch's calibre. ( )
  EmreSevinc | Aug 28, 2011 |
  Ovi_Books | Jun 6, 2010 |
Joshua Bloch, once a developer for Sun (and in fact one of the primary authors of the Java Collections API), guides you through a series of enlightening "Dos and Don'ts" about the Java programming language. The book is broken up into short items, with each item containing evidence, examples, and a good conversational explanation of the item. It's a great deal thinner than its C-language counterpart, but don't let that dissuade you from the purchase; Bloch will save you a ton of time reading through the JLS, or learning these lessons the hard way. I keep a copy in my work desk for reference, and even if you've been programming Java for years, it's likely you'll learn something. ( )
  Chamelaeon | Jan 27, 2009 |
This book deserved the full five star when it came out. Lost some of its value, cause part of Joshua Bloch suggestions have been included in the standard Java 5 language, and in some IDE feautures as well, so the content is partially outdated.
Best thing about the book is that you can read it piece by piece and still find something useful and interesting. ( )
  ziobrando | Mar 11, 2007 |
Showing 1-5 of 8 (next | show all)
no reviews | add a review
You must log in to edit Common Knowledge data.
For more help see the Common Knowledge help page.
Series (with order)
Canonical title
Original title
Alternative titles
Original publication date
Important places
Important events
Related movies
Awards and honors
First words
Last words
Disambiguation notice
Publisher's editors
Publisher series
Original language
Canonical DDC/MDS
Book description
Haiku summary

Amazon.com Amazon.com Review (ISBN 0201310058, Paperback)

Written for the working Java developer, Joshua Bloch's Effective Java Programming Language Guide provides a truly useful set of over 50 best practices and tips for writing better Java code. With plenty of advice from an indisputable expert in the field, this title is sure to be an indispensable resource for anyone who wants to get more out of their code.

As a veteran developer at Sun, the author shares his considerable insight into the design choices made over the years in Sun's own Java libraries (which the author acknowledges haven't always been perfect). Based on his experience working with Sun's best minds, the author provides a compilation of 57 tips for better Java code organized by category. Many of these ideas will let you write more robust classes that better cooperate with built-in Java APIs. Many of the tips make use of software patterns and demonstrate an up-to-the-minute sense of what works best in today's design. Each tip is clearly introduced and explained with code snippets used to demonstrate each programming principle.

Early sections on creating and destroying objects show you ways to make better use of resources, including how to avoid duplicate objects. Next comes an absolutely indispensable guide to implementing "required" methods for custom classes. This material will help you write new classes that cooperate with old ones (with advice on implementing essential requirements like the equals() and hashCode() methods).

The author has a lot to say about class design, whether using inheritance or composition. Tips on designing methods show you how to create understandable, maintainable, and robust classes that can be easily reused by others on your team. Sections on mapping C code (like structures, unions, and enumerated types) onto Java will help C programmers bring their existing skills to Sun's new language. Later sections delve into some general programming tips, like using exceptions effectively. The book closes with advice on using threads and synchronization techniques, plus some worthwhile advice on object serialization.

Whatever your level of Java knowledge, this title can make you a more effective programmer. Wisely written, yet never pompous or doctrinaire, the author has succeeded in packaging some really valuable nuggets of advice into a concise and very accessible guidebook that arguably deserves a place on most any developer's bookshelf. --Richard Dragan

Topics covered: Best practices and tips for Java Creating and destroying objects (static factory methods, singletons, avoiding duplicate objects and finalizers) Required methods for custom classes (overriding equals(), hashCode(), toString(), clone(), and compareTo() properly) Hints for class and interface design (minimizing class and member accessibility, immutability, composition versus inheritance, interfaces versus abstract classes, preventing subclassing, static versus nonstatic classes) C constructs in Java (structures, unions, enumerated types, and function pointers in Java) Tips for designing methods (parameter validation, defensive copies, method signatures, method overloading, zero-length arrays, hints for Javadoc comments) General programming advice (local variable scope, using Java API libraries, avoiding float and double for exact comparisons, when to avoid strings, string concatenation, interfaces and reflection, avoid native methods, optimizing hints, naming conventions) Programming with exceptions (checked versus run-time exceptions, standard exceptions, documenting exceptions, failure-capture information, failure atomicity) Threading and multitasking (synchronization and scheduling hints, thread safety, avoiding thread groups) Serialization (when to implement Serializable, the readObject(), and readResolve() methods)

(retrieved from Amazon Thu, 12 Mar 2015 18:20:24 -0400)

(see all 3 descriptions)

'Effective Java' provides 50 powerful techniques for improving every Java program and design, and includes top-notch code examples and real-world Java development 'war stories'.

» see all 2 descriptions

Quick Links

Popular covers


Average: (4.42)
1 1
2 2
2.5 1
3 15
3.5 3
4 42
4.5 9
5 87

Penguin Australia

An edition of this book was published by Penguin Australia.

» Publisher information page

Is this you?

Become a LibraryThing Author.


About | Contact | Privacy/Terms | Help/FAQs | Blog | Store | APIs | TinyCat | Legacy Libraries | Early Reviewers | Common Knowledge | 134,115,340 books! | Top bar: Always visible