New to Java? We'll help you get started with our revised beginner's tutorial, or our free online textbook.


Get the latest Java books
h t t p : / /w w w . j a v a c o f f e e b r e a k . c o m /

Java Coffee Break

Essential Java Style

Author Jeff Langr
Publisher Prentice Hall
ISBN 0-13-085086-1
Experience level Intermediate - Expert

Most programming books on the market today cover a particular language, programming technique, or field of computer science. Aside from university texts, which deal with theory, most popular titles deal with practical issues - the nitty-gritty details of day to day software development. They're quick, fast paced, and teach a particular topic, such as Java networking, or JDBC, or Swing/AWT programming. They focus on how to achieve a task, on short-term goals for programmers on the run.

A rarer, but no less important, type of book is one that focuses improving the quality of software development. These type of books usually become industry classics, if written well, and are adopted by universities teaching software engineering classes. But they aren't always relevant to "real-life" software developers, who are often constrained by deadlines and just don't have the time to produce perfectly polished code. The rarest type of book of all is one that combines solid theory, with practical applications. That's the type of book that "Essential Java Style : Patterns for Implementation" attempts to be.

The principle underlying this book is that there are certain ways of writing code that can improve the quality of software, and make it easier to create, modify and debug. The book introduces the reader to the principle of design patterns. Design patterns are reusable templates for software design, that represent tried and true solutions to common problems. Design pattern books have been available for C++ and Smalltalk developers for years - but there has been a shortage of good pattern books for Java. "Essential Java Style" provides real-life code examples in Java, as well as a good discussion of the reasons behind these patterns and how they can aid the software development process.

The patterns are, for the most part, extremely useful and relevant to practical Java programming - though a certain amount of theoretical patterns that will cause an understanding amount of frustration in practical development are also included. My feeling is that some patterns would have been best left out, while others are such a revolutionary idea that every Java programmer should observe them. The challenge, for the reader, is to choose which patterns to adopt, and which to refrain from applying in practice.

While "Essential Java Style : Patterns for Implementation" is an extremely good book for software developers, beginners to design patterns and Java will find the book challenging. In addition, the book suffers from very poor organization -- patterns are not in order, and the reader will have to jump from one to another to gain a thorough understanding. This not withstanding, almost every developer will gain from applying these design patterns to their applications -- not only in the short term, but in the years to come as the application is refined and maintained. The techniques described within "Essential Java Style" : Patterns for Implementation" will most benefit the professional software developer, who is involved in a team project and a medium-to-large-scale software project. -- David Reilly

Essential Java Style
Buy the Book
Get this title at Amazon.com