Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "OTExample Observer"
Line 1: | Line 1: | ||
'''This is a reusable implementation of the omnipresent design pattern "Observer".''' | '''This is a reusable implementation of the omnipresent design pattern "Observer".''' | ||
− | Note, that a well designed program in Object Teams will usually not require an explicit Observer infrastructure. See the [[OTExample_Stopwatch | Stopwatch]] example for an example, how a plain callin-binding ({{{ | + | Note, that a well designed program in Object Teams will usually not require an explicit Observer infrastructure. See the [[OTExample_Stopwatch | Stopwatch]] example for an example, how a plain callin-binding ({{{otjld|4|1}}}) suffices. |
This demo should, however, give a quick understanding to some techniques of Object Teams for all who are familiar with the Observer pattern (''the OTDT ships with a simpler version of this pattern''). | This demo should, however, give a quick understanding to some techniques of Object Teams for all who are familiar with the Observer pattern (''the OTDT ships with a simpler version of this pattern''). | ||
Line 15: | Line 15: | ||
</tr><tr> | </tr><tr> | ||
<td>flower_example/ | <td>flower_example/ | ||
− | :Bee | + | :[[OTExample_Observer/Bee|Bee]] |
− | :Hummingbird | + | :[[OTExample_Observer/Hummingbird|Hummingbird]] |
− | :Flower</td> | + | :[[OTExample_Observer/Flower|Flower]]</td> |
<td style="vertical-align:top;">'''Implement some base entities'''</td> | <td style="vertical-align:top;">'''Implement some base entities'''</td> | ||
</tr><tr> | </tr><tr> |
Revision as of 07:19, 23 February 2010
This is a reusable implementation of the omnipresent design pattern "Observer".
Note, that a well designed program in Object Teams will usually not require an explicit Observer infrastructure. See the Stopwatch example for an example, how a plain callin-binding (4) suffices.
This demo should, however, give a quick understanding to some techniques of Object Teams for all who are familiar with the Observer pattern (the OTDT ships with a simpler version of this pattern).
protocol/ | This implements the GoF pattern very straight forwardly.
Open spots are:
|
flower_example/ | Implement some base entities |
flower_example/
|
Two applications of the Observer pattern binding the above open spots using callin (4) and callout (3) bindings. |
flower_example/
|
A simple main program |