Observer-Conditioned-Observable Design Pattern

By: Douglas Lyon, Carl Weiman


Interactive programs use multiple viewers and controllers to alter an underlying numeric model. These can update each other in an observer-observable loop that can propagate unintended and unmanaged digitization errors. The OCO design pattern breaks the loop and maintains control of the numerical values. The interception of changes is done via a modification of the equals method. If two numbers are equal (to within a user defined tolerance) propagation is suppressed. Thus, the digitizer re-samples and re-quantizes the numeric event. Lazy instantiation is not new, nor, for that matter, is the singleton design pattern. However, parametric lazy instantiation is new and so is the parametric singleton.

Cite as:

Douglas Lyon, Carl Weiman, “Observer-Conditioned-Observable Design Pattern”, Journal of Object Technology, Volume 6, no. 4 (May 2007), pp. 15-24, doi:10.5381/jot.2007.6.4.c2.

PDF | HTML | DOI | BiBTeX | Tweet this | Post to CiteULike | Share on LinkedIn

The JOT Journal   |   ISSN 1660-1769   |   DOI 10.5381/jot   |   AITO   |   Open Access   |    Contact