Google
 
   
Login
Username:

Password:


Lost Password?

Register now!
Search
Main Menu
top books
Polls
What do you think about php-deluxe.net?
Excellent!
Cool
Hmm..not bad
What the hell is this?
encyclopedia
recommendation
compare webbrowser
Freenet DSL
Who's Online
7 user(s) are online (6 user(s) are browsing encyclopedia)

Members: 0
Guests: 7

more...
browser tip
Unix Befehle
manual of unix befehle
recommendation!
Sponsored
partner

Anti-pattern

Anti-patterns, also referred to as pitfalls, are classes of commonly-reinvented bad solutions to problems. They are studied, as a category, in order that they may be avoided in the future, and that instances of them may be recognised when investigating non-working systems.

The term originates in computer science, from the Gang of Four (software) s Design Patterns book, which laid out examples of good programming practice. The authors termed these good methods design pattern (computer science) , and opposed them to anti-patterns . Part of good programming practice is the avoidance of anti-patterns.

The concept is readily applied to Engineering in general, and also applies outside engineering, in any human endeavour. Although the term is not commonly used outside engineering, the concept is quite universal.

=Some recognised computer programming anti-patterns=

  • Abstraction inversion
  • Accidental complexity
  • Action at a distance (computer science)
  • Accumulate and fire
  • Ambiguous viewpoint
  • Analysis paralysis
  • BaseBean
  • Big ball of mud
  • Blind faith (computer science)
  • Boat anchor
  • Busy spin
  • Caching failure
  • Checking type instead of membership#Possible programming mistakes
  • Code momentum
  • Coding by exception
  • Continuous obsolescence
  • Copy and paste programming
  • Creeping featurism
  • Dead end (computer science)
  • Design by committee
  • DLL hell
  • Double-checked locking
  • Empty subclass failure
  • Escalating commitment to a single, failing course of action
  • Fencepost error
  • Gas factory
  • God object
  • Improbability factor
  • I told you so
  • Input kludge
  • Interface bloat
  • Hard code
  • Lava flow (programming)
  • Magic number (programming)#Magic numbers in code
  • Magic pushbutton
  • Management by numbers
  • Mushroom management
  • Object cesspool
  • Optimization (computer science)#When to optimize
  • Poltergeist (computer science)s
  • Procedural code
  • Race hazard
  • Reinventing the wheel
  • Reinventing the square wheel
  • Scope creep
  • Smoke and mirrors
  • Software bloat
  • Spaghetti code
  • Stovepipe system
  • Vendor lock-in
  • Warm body
  • Yo-yo problem
  • = Some society anti-patterns =

    The status of some of these is likely to be controversial.

  • Censorship
  • Dictatorship
  • Discrimination
  • Dogmatic religion
  • Intolerance
  • Monopoly
  • Popularity contest
  • Political corruption
  • Privatization of public transport
  • Racial segregation
  • Single-party system
  • Totalitarianism
  • Two-party politics
  • Witch hunt
  • Year Zero (political notion) (sudden extreme social change)
  • = See also =

  • Code smell
  • = References =

  • Perl Design Patterns Book – A free online book
  • William J. Brown, Raphael C. Malveau, Hays W. McCormick III, and Thomas J. Mowbray. 1998. AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis . John Wiley & Sons. ISBN 0471197130.
  • = External links =

  • [http://www.antipatterns.com/briefing/ Tutorial on anti-patterns]
  • [http://c2.com/cgi/wikiAntiPatternsCatalog Anti-patterns catalog]
  • [http://thedailywtf.com/ The Daily WTF]