views:

99

answers:

5

There's lots of good material on Design Patterns out there that covers how you should be doing things; better know as...best practices.

What about the opposite though? Some times it can be more detrimental if you're doing things that are dangerous to stability, or unmaintaneable, or just plain wrong. So, are there any good books that cover the bad software design patterns that you should be avoiding like the plague?

+6  A: 

how about antipatterns or more nicely presented here

NomeN
+1 I really like the second link. It covers a lot of best practices (from the negative point of view) that aren't covered in the GoF design patterns.
JoshJordan
+1  A: 

Probably a good place to start is the Wikipedia entry on antipatterns.

Matthew Jones
+2  A: 
Daniel Moura
+3  A: 

The things you are looking for are called Anti-patterns.

A great place to start reading about them is the book "AntiPatterns," which made the phrase popular. It is based on the great paper by Andrew Koenig, "Patterns and Anti-Patterns". Can't get the link to work in Markdown, so check it out here:

http://books.google.com/books?hl=en&lr=&id=HBAuixGMYWEC&oi=fnd&pg=PA383&dq="Koenig"+"Patterns+and+antipatterns"+&ots=elEw3US-He&sig=3537teykJxjvQqmq2odql51mmOc#v=onepage&q=%22Koenig%22%20%22Patterns%20and%20antipatterns%22&f=false
JoshJordan
+1  A: 

One of the best explanations I've seen of a bad design pattern is New Life for EJB by Rajat Taneja and Ganesh Prasad.

Some very bad design patterns were widely used. EJB 1 and especially EJB 2 made it into wide spread use despite being convoluted and badly designed. Taneja and Prasad give a lucid explanation of what is wrong with those specifications. They also don't think very highly of the EJB 3 spec.

Dean Schulze