Effective Java (2nd Edition)

Effective Java (2nd Edition)
by Joshua Bloch

Effective Java (2nd Edition)
List Price: $54.99
Our Price: $35.74
You Save: $19.25 (35%)
Availability: Usually ships in 1-2 business days
Buy Used: from $26.99 (click here)
Category: Book
See more book details and other editions


or

Book Summary Information

Author: Joshua Bloch
Edition: Paperback
Audio: English (Unknown); English (Original Language); English (Published)
Published: 2008-05-28
ISBN: 0321356683
Number of pages: 346
Publisher: Addison-Wesley
Product features:
  • ISBN13: 9780321356680
  • Condition: New
  • Notes: BRAND NEW FROM PUBLISHER! 100% Satisfaction Guarantee. Tracking provided on most orders. Buy with Confidence! Millions of books sold!
Accessories:

Book Reviews of Effective Java (2nd Edition)

Book Review: Java craftmanship vs java correctness
Summary: 3 Stars

Relatively strong in the language of java, it is a craft knowledge book. One will generally find most of the recommendations correct. I like this book, but find the book fails in the meta process area.

It fails in three areas.
The first is the key weakness...
1) It is too weak on the process of confirming the correctness of java. Snippets of craft knowledge applied to the APIs, is not as necessary as the process of confirming the java code performs as expected. It gives craft knowledge, but not the knowledge to develop one's own craft.

- The most important thing a book like this can do is to teach a developer how to think about effective java programming. Metaprocess not just examples.
- How to profile correctly and tie these to the results of at least one example would be excellent. Many programmers reading the book, don't know how to confirm the effectiveness of their own code. Explaining in detail how to confirm the examples with the profiler would make this a five ***** item.
- It doesn't cover how to use static analysis tools and how to customize them for yourself or your shop. For example, avoiding finalize to release resources can be detected by a custom checker as a shop standard. Many static analysis tools can automatically (or can be made to) check code patterns.

Basically, a "my approach to effective java" chapter would help of how the author comes to this knowledge and confirms it.

These next two are nit's on the book's topic...

2) Java in it's environment could be better explained and the properties that affect the execution. It doesn't clearly explain how some SUN API's are very property setting dependent. Understanding the intentionality of an API property and finding the correct value for properties is essential. General practices require deeper knowledge of the API's (e.g. such as SUN's RMIs large number of unofficially documented garbage collection settings see [...] ). There are limits of java portability and some edgy API's get programmers into trouble. Knowing what and how to tradeoff architectural decisions in selecting an API or language construct is useful.

Further some of these recommendations are affected by the gc and heap settings. Some types of JVMs (SUN's 1.4 had IMP) have differences that change the recommended practice.

3) Use of certain packages over others (e.g. nio (Java 7 nio2)) and what the purpose of these packages are could be explained better. How performance and file transfers are improved with non-blocking io.

Finally, I note java always consists at least these two tasks developing correctly and searching for the correct API to use. Those following this book may believe that the coding correctly is sufficient.

Afterword. I do like this book, but it doesn't make me think using this (JB) author's mental process. Improve by explaining the process of discovering effective java and incorporating it in practice, and this book becomes essential. It's a choice of giving programming pearls versus teaching one how to find programming pearls of wisdom. (I like both, but a bit more of the latter.)

Effective practice performs at least the following functions:

- Defect Tracking - identify critical failures affecting system performance (bugzilla)
- Profiling - determine resource usage and performance of running software components over time (dynamic analysis) and ensure memory leaks aren't occurring
- Network Analysis - (for programs with networking) determine network component and communication failures and packet timing (e.g. wireshark)
- Logging - monitor the logged events in the system for trends and failures (log4j)
- Debugging - trace the execution of code in development to ascertain correct behavior (eclipse)
- Instrumentation - monitor (in a limited fashion) the software and hardware components in production (e.g. SNMP in the Java 6 JVM)
- Static Analysis - analyze (automated or walkthrough) the code for defects prior to running (e.g. Findbugs, checkstyle or better PMD)
- Compilation - analyze the compiler output (WERROR)
- Database Statistics - analyze the database (or file) statistics and access path to stored data (e.g. explain plan, top 10 lists)
- Code management (e.g. subversion or better mylin)

Thanks

Joe

Summary of Effective Java (2nd Edition)

Are you looking for a deeper understanding of the Java? programming language so that you can write code that is clearer, more correct, more robust, and more reusable? Look no further! Effective Java?, Second Edition, brings together seventy-eight indispensable programmer?s rules of thumb: working, best-practice solutions for the programming challenges you encounter every day.

 

This highly anticipated new edition of the classic, Jolt Award-winning work has been thoroughly updated to cover Java SE 5 and Java SE 6 features introduced since the first edition. Bloch explores new design patterns and language idioms, showing you how to make the most of features ranging from generics to enums, annotations to autoboxing.

 

Each chapter in the book consists of several ?items? presented in the form of a short, standalone essay that provides specific advice, insight into Java platform subtleties, and outstanding code examples. The comprehensive descriptions and explanations for each item illuminate what to do, what not to do, and why.

 

Highlights include:

  • New coverage of generics, enums, annotations, autoboxing, the for-each loop, varargs, concurrency utilities, and much more
  • Updated techniques and best practices on classic topics, including objects, classes, libraries, methods, and serialization
  • How to avoid the traps and pitfalls of commonly misunderstood subtleties of the language
  • Focus on the language and its most fundamental libraries: java.lang, java.util, and, to a lesser extent, java.util.concurrent and java.io

Simply put, Effective Java?, Second Edition, presents the most practical, authoritative guidelines available for writing efficient, well-designed programs.

Java Books

Book Subjects
Most talked about in Java Books
Who's Afraid of Java? ImageWho's Afraid of Java?
by Steve Heller
Academic Press; Published: 1997-07-30; Paperback; Book
Best price: $19.92
Price in other shops: $39.95
Decompiling Java (Java Masters) ImageDecompiling Java (Java Masters)
by Godfrey Nolan
McGraw-Hill Education; Published: 1998-11; Paperback; Book
A Comprehensive Introduction to Object-oriented Programming with Java ImageA Comprehensive Introduction to Object-oriented Programming with Java
by C. Thomas Wu
McGraw-Hill Higher Education; Published: 2007-03; Paperback; Book
Best price: $69.99
Android Application Development For Dummies ImageAndroid Application Development For Dummies
by Donn Felker
For Dummies; Published: 2010-12-07; Paperback; Book
Best price: $10.99
Price in other shops: $29.99
Java For Dummies ImageJava For Dummies
by Barry Burd
For Dummies; Published: 2011-08-11; Paperback; Book
Best price: $16.90
Price in other shops: $29.99
The Jini(TM) Specification (The Jini(TM) Technology Series) ImageThe Jini(TM) Specification (The Jini(TM) Technology Series)
by Ken Arnold, Robert W. Scheifler, Jim Waldo, Ann Wollrath, Robert Scheifler, Bryan O'Sullivan
Addison-Wesley Pub (Sd); Published: 1999-06; Paperback; Book
Best price: $7.36
Price in other shops: $39.95
Thinking in Java (2nd Edition) ImageThinking in Java (2nd Edition)
by Bruce Eckel
Pearson Education; Published: 2000-05-31; Paperback; Book
Best price: $3.32
Price in other shops: $44.99
Essential Jni: Java Native Interface (Essential Java) ImageEssential Jni: Java Native Interface (Essential Java)
by Robert Gordon, Rob Gordon
Prentice Hall PTR; Published: 1998-03; Paperback; Book
Best price: $32.00
Price in other shops: $34.95
Introduction to Java Programming, Comprehensive (8th Edition) ImageIntroduction to Java Programming, Comprehensive (8th Edition)
by Y. Daniel Liang
Prentice Hall; Published: 2010-01-13; Paperback; Book
Best price: $95.00
Price in other shops: $135.00
Instant Java Servlets (Book/CD-ROM package) ImageInstant Java Servlets (Book/ CD-ROM package)
by Phil Hanna
McGraw-Hill Companies; Published: 2000-05-22; Paperback; Book
Best price: $34.92
Price in other shops: $49.99
Similar Books and other products
Clean Code: A Handbook of Agile Software Craftsmanship ImageClean Code: A Handbook of Agile Software Craftsmanship
by Robert C. Martin
Prentice Hall; Published: 2008-08-11; Paperback; Book
Best price: $32.89
Price in other shops: $49.99
Refactoring: Improving the Design of Existing Code ImageRefactoring: Improving the Design of Existing Code
by Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts
Addison-Wesley Professional; Published: 1999-07-08; Hardcover; Book
Best price: $25.00
Price in other shops: $64.99
Java Performance ImageJava Performance
by Charlie Hunt, Binu John
Prentice Hall; Published: 2011-10-14; Paperback; Book
Best price: $40.97
Price in other shops: $59.99
Design Patterns: Elements of Reusable Object-Oriented Software ImageDesign Patterns: Elements of Reusable Object-Oriented Software
by Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
Addison-Wesley Professional; Published: 1994-11-10; Hardcover; Book
Best price: $35.45
Price in other shops: $59.99
The Pragmatic Programmer: From Journeyman to Master ImageThe Pragmatic Programmer: From Journeyman to Master
by Andrew Hunt, David Thomas
Addison-Wesley Professional; Published: 1999-10-30; Paperback; Book
Best price: $35.60
Price in other shops: $49.99
Core Java?, Volume I--Fundamentals (8th Edition) ImageCore Java?, Volume I--Fundamentals (8th Edition)
by Cay S. Horstmann, Gary Cornell
Prentice Hall; Published: 2007-09-21; Paperback; Book
Best price: $21.59
Price in other shops: $59.99
Head First Design Patterns ImageHead First Design Patterns
by Elisabeth Freeman, Eric Freeman, Bert Bates, Kathy Sierra, Elisabeth Robson
O'Reilly Media; Published: 2004-11-01; Paperback; Book
Best price: $24.00
Price in other shops: $49.99
Java Concurrency in Practice ImageJava Concurrency in Practice
by Brian Goetz, Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, Doug Lea
Addison-Wesley Professional; Published: 2006-05-19; Paperback; Book
Best price: $27.99
Price in other shops: $59.99
Java The Complete Reference, 8th Edition ImageJava The Complete Reference, 8th Edition
by Herbert Schildt
McGraw-Hill Osborne Media; Published: 2011-06-22; Paperback; Book
Best price: $27.44
Price in other shops: $60.00
Head First Java, 2nd Edition ImageHead First Java, 2nd Edition
by Kathy Sierra, Bert Bates, Bert Bates
O'Reilly Media; Published: 2005-02-16; Paperback; Book
Best price: $24.50
Price in other shops: $44.95