A quick survey of the bitter landscape
To study Java antipatterns, we must begin with an understanding of the over-
all landscape: the standards TCP , IP , HTTP, HTML , and XML . The perfor-
mance of communications on the Internet has improved dramatically, but
complex interfaces with too many objects can hinder good performance
before any application code even enters the picture.
Object technologies that form the basis for the Java programming model
make it easier to design and build applications. Encapsulation allows effective
packaging, inheritance allows meaningful reuse, and polymorphism allows
many forms of the same thing to share the same interface. Object layering is
the foundation for good design, but excessive layering will hamper perfor-
mance and readability.
Programming methodology also plays a significant role in Java antipat-
terns. Traditional methodologies such as the waterfall process allow complex
projects but do not adapt to change or late-breaking requirements. Iterative
development, through multiple cycles that iterate over requirements, allows
better adoption of change and vastly superior risk management, but object-
oriented processes are not bulletproof. Programming processes are still
improving, and extreme programming shows promise. By adopting practices
that have worked under many circumstances, the process is improving the reli-
ability and efficiency of teams today.
This summarizes chapter 2. Part 2 continues with a series of chapters that
iteratively improve a poor programming example. Chapters 3 and 4 will intro-
duce model / view / controller concepts and related antipatterns in the new con-
text of servlet designs. Chapters 5 and 6 will demonstrate effective memory use
and caching techniques. Chapters 7 and 8 will focus on EJB s and connection
models. Chapters 9 and 10 will deal with the bigger picture, addressing scalabil-
ity and programming hygiene.
Antipatterns in this chapter
These are the templates for the antipatterns that appear in this chapter. They
provide an excellent summary format and form the basis of the cross-refer-
ences in appendix A.
Too Many Web Page Items
R ELATED ANTIPATTERNS : Round-tripping. This antipattern is one form
of the Round-tripping antipattern, found in chapter 8.