# IT:AD:Design:AntiPatterns #
* [[../|(UP)]]
{{indexmenu>.#2|nsort tsort}}
AntiPatterns are common code practices that are thought to make development easier...but turn out to do the opposite.
## AntiPatterns ##
###### Vestigial Structure Pattern ######
Keeping old methods because we can't remember if anybody is calling them...Nobody brave enought to remove.
###### Flags Over Objects ######
Properties to help it decide which way to render, etc.
**[[IT/#DDD/]]** Document Driven Design is a denigrating term for software designed by the [[IT/#BA/]]s who are defining technical specifications that they have no qualifications for (ie, defining the db schema, the [[IT/#UX/]], etc.)
###### Gawd Classes
* See: [[IT/AD/Design/AntiPatterns/Gawd Classes|Gawd Classes]]
###### Active Record ######
* See: [[IT/AD/Design/AntiPatterns/Active Record/]]
###### The Iceberg Class ######
ie: Big Privates ...
###### Found On Internet ######
###### Copy-Paste-Compile Pattern ######
"I copied it from CodeProject". in contrast to [[IT/AD/Patterns/DRY/]]
###### THe Golden Hammer ######
Same language/tool for everything...
###### Shiny Toy ######
###### Not Invented Here ######
You just got to write your own, eh?
###### Beware The Share! ######
###### Feature Creep######
Missed Software, Deliver frequenty.
###### Assumption Driven Programming######
You are Not the User. Cats thinking as Dogs.
###### Telemarketer Principle######
Contrast with [[IT/AD/Patterns/Hollywood Principle/]].
###### Static Cling Pattern ######
Static things are to be avoided.
###### Spare Parts in Close Formation #####
Using [[IT/#scalar/]]s as arguments to methods, is easier, but (no pun intended) doesn't scale well across [[IT/#Tier/]]s.