Chapter 3. Exploiting Patterns in Java

In Chapter 2, you learned about half of "thinking like a Java developer" when software development methodologies were discussed. This chapter handles the other half—the use of patterns to make you an effective Java developer.

This is not a patterns book. This chapter is included because patterns are critical to understanding and communicating the designs of application programming interfaces, tools, and other applications. This is because the vast majority of these technologies are built on top of design patterns.

If I had to pick one aspect of software engineering that I absolutely love, hands down, it would be software design. Designing software well is challenging and it requires a combination of creativity and problem-solving skills. The experience of creating a solution in software can be very rewarding. If you are just becoming familiar with the Java programming language, software design can be a little overwhelming. It's like a blank canvas with a lot of colors from which to choose. Design decisions are difficult to make because—without experience—it is difficult to understand how the choices you make will affect the application later.

Learning design patterns is the single best way to increase your abilities as a software engineer. Technology changes very quickly. To give things a little perspective, learning a new technology is like reading a good book; learning patterns is like learning to read.

The focus of this chapter is to communicate ...

Get Professional Java® JDK®, 6th Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.