Content deleted Content added
ShelfSkewed (talk | contribs) →Design patterns: dab link |
Format as definition list |
||
Line 5:
Examples of this type of design pattern include:
: : Command objects are handled or passed on to other objects by logic-containing processing objects : Command objects encapsulate an action and its parameters : Turn a [[Recursion (computer science)|recursive function]] into an [[iterative function]] that uses a [[call stack|stack]]<ref>{{cite web | url = http://c2.com/
| title = Externalize The Stack
Line 17 ⟶ 21:
| access-date = 2012-05-21
}}</ref>
: Implement a specialized computer language to rapidly solve a specific set of problems : [[Iterator]]s are used to access the elements of an aggregate object sequentially without exposing its underlying representation : Provides a unified interface to a set of interfaces in a subsystem : Provides the ability to restore an object to its previous state (rollback) : Designed to act as a default value of an object <dl>
* [[Observer pattern]]: a.k.a. Publish/Subscribe or Event Listener. Objects register to observe an event that may be raised by another object▼
<dt>[[Observer pattern]]</dt>
** Weak reference pattern: De-couple an observer from an observable<ref>{{cite web▼
▲
<dl>
<dt>Weak reference pattern</dt>
| first = Ashod
| last = Nakashian
Line 32 ⟶ 45:
| access-date = 2012-05-21
}}</ref>
</dd>
* [[Protocol stack]]: Communications are handled by multiple layers, which form an encapsulation hierarchy<ref>{{cite web▼
</dl>
</dd>
</dl>
;[[Protocol stack]]
▲
| url = http://c2.com/
| title = Protocol Stack
Line 41 ⟶ 59:
| access-date = 2012-05-21
}}</ref>
: A task is scheduled to be performed at a particular interval or clock time (used in [[real-time computing]]) : Optimise the implementation of a visitor that is allocated, used only once, and then deleted : Recombinable [[business logic]] in a [[boolean algebra|boolean]] fashion : A clean way for an object to partially change its type at runtime : Algorithms can be selected on the fly, using composition : Describes the [[program skeleton|skeleton]] of a program; algorithms can be selected on the fly, using [[Inheritance (object-oriented programming)|inheritance]] : A way to separate an algorithm from an object ==See also==
|