Poltergeist (computer programming): Difference between revisions

Content deleted Content added
See also: +YAGNI
clean up using AWB
Line 2:
 
In [[computer programming]], a '''poltergeist''' (or '''gypsy wagon''') is a short-lived, typically stateless object used to perform initialization or to invoke methods in another, more permanent class. It is considered an [[anti-pattern]]. The original definition is by Michael Akroyd 1996 - Object World West Conference:
:"As a [[Vardo_%28Romani_wagon%29Vardo (Romani wagon)|gypsy wagon]] or a [[poltergeist]] appears and disappears mysteriously, so does this short lived object. As a consequence the code is more difficult to maintain and there is unnecessary resource waste. The typical cause for this antipattern is poor object design." <!-- I think this is a quote -->
 
A poltergeist can often be identified by its name; they are often called "manager_", "controller_", "start_process", etc.
 
Sometimes, poltergeist classes are created because the programmer anticipated the need for a more complex architecture. For example, a poltergeist arises if the same method acts as both the ''client'' and ''invoker'' in a [[Command pattern]], and the programmer anticipates separating the two phases. However, this more complex architecture may actually never materialize.
Line 24:
 
[[Category:Anti-patterns]]
 
 
{{Comp-sci-stub}}