Behavioral pattern: Difference between revisions

Content deleted Content added
Ordered listing alphabetically
mNo edit summary
Line 6:
* [[Command pattern]]: Command objects encapsulate an action and its parameters
* "Externalize the Stack": Turn a recursive function into an iterative one that uses a stack.<ref>{{cite web
| url = http://c2.com/
| title = Externalize The Stack
| date = 2010-01-19
| publisher = c2.com
| archiveurl = http://c2.com/cgi/wiki?ExternalizeTheStack
| archivedate = 2010-01-19
| accessdate = 2012-05-21
}}</ref>
* [[Hierarchical visitor pattern]]: Provide a way to visit every node in a hierarchical [[data structure]] such as a tree.
Line 22:
* [[Observer pattern]]: aka Publish/Subscribe or Event Listener. Objects register to observe an event that may be raised by another object
** Weak reference pattern: De-couple an observer from an observable.<ref>{{cite web
| author = Ashod Nakashian
| authorlink = http://c2.com/cgi/wiki?AshodNakashian
| url = http://c2.com/
| title = Weak Reference Pattern
| date = 2004-04-11
| publisher = c2.com
| archiveurl = http://c2.com/cgi/wiki?WeakReferencePattern
| archivedate = 2004-04-11
| accessdate = 2012-05-21
}}</ref>
* [[Protocol stack]]: Communications are handled by multiple layers, which form an encapsulation hierarchy.<ref>{{cite web
| url = http://c2.com/
| title = Protocol Stack
| date = 2006-09-05
| publisher = c2.com
| archiveurl = http://c2.com/cgi/wiki?ProtocolStack
| archivedate = 2006-09-05
| accessdate = 2012-05-21
}}</ref>
* [[Scheduled-task pattern]]: A task is scheduled to be performed at a particular interval or clock time (used in [[real-time computing]])
Line 53:
 
==See also==
* [[Concurrency pattern]]
 
* [[Creational pattern]]
* [[Structural pattern]]
* [[Creational pattern]]
* [[Concurrency pattern]]
 
<!--Categories-->
Line 63 ⟶ 62:
<!--Interwikis-->
[[bs:Šema ponašanja]]
[[de:Verhaltensmuster (Software)]]
[[hu:Viselkedési minta]]
[[ru:Поведенческие шаблоны проектирования]]