Trey Harris | 26 Apr 09:21
Picon

Need help recalling a design pattern

There's a design pattern whose name I'm having trouble remembering (which
is making it hard for me to look up any literature on it).  I'm hoping
maybe someone here can help me.

I thought it was called the "recognizer" pattern, but Googling isn't
turning up anything by that name.  Basically, you have a data blob, and a
list of candidate classes, and you throw the data at the classes one by
one until one of them "recognizes" the blob and returns an object
encapsulating it.

In more advanced usage, you get responses back from the candidate classes
about how well they recognize the blob, and you eventually use the class
that can best recognize it, even if several can recognize it to some
extent.

Sound familiar?

Thanks,

Trey
Chris Winters | 26 Apr 16:13

Re: Need help recalling a design pattern

* Trey Harris (trey <at> sage.org) [050426 03:34]:
> There's a design pattern whose name I'm having trouble remembering (which
> is making it hard for me to look up any literature on it).  I'm hoping
> maybe someone here can help me.
> 
> I thought it was called the "recognizer" pattern, but Googling isn't
> turning up anything by that name.  Basically, you have a data blob, and a
> list of candidate classes, and you throw the data at the classes one by
> one until one of them "recognizes" the blob and returns an object
> encapsulating it.
> 
> In more advanced usage, you get responses back from the candidate classes
> about how well they recognize the blob, and you eventually use the class
> that can best recognize it, even if several can recognize it to some
> extent.

It sounds like a Chain of Responsibility (list of candidates +
throwing the data at them) implementing a Factory (passing in some
generic data and getting back an appropriate object).

Chris

--

-- 
Chris Winters (http://www.cwinters.com)
Building enterprise-capable snack solutions since 1988
Andrew W. Gibbs | 26 Apr 14:41

Re: Need help recalling a design pattern


When I've employed such patterns, I've been under the impression that
they fell under the umbrella of "Factory".  Perhaps, though, you are
looking for a sub-pattern of Factory?

Maybe the obviousness of the answer is what is making you have a hard
time finding it? :-)

  -- Andrew

On Tue, 26 Apr 2005, Trey Harris wrote:

> There's a design pattern whose name I'm having trouble remembering (which
> is making it hard for me to look up any literature on it).  I'm hoping
> maybe someone here can help me.
> 
> I thought it was called the "recognizer" pattern, but Googling isn't
> turning up anything by that name.  Basically, you have a data blob, and a
> list of candidate classes, and you throw the data at the classes one by
> one until one of them "recognizes" the blob and returns an object
> encapsulating it.
> 
> In more advanced usage, you get responses back from the candidate classes
> about how well they recognize the blob, and you eventually use the class
> that can best recognize it, even if several can recognize it to some
> extent.
> 
> Sound familiar?
> 
> Thanks,
(Continue reading)

Rob Kinyon | 26 Apr 14:49
Picon
Gravatar

Re: Need help recalling a design pattern

I'm with Andrew here; it sounds like a subpattern of Factory. At
least, that's how I've conceived of it whenever I had to do something
similar. Maybe it has a touch of Dispatcher in it, too.

Rob

On 4/26/05, Andrew W. Gibbs <awgibbs <at> awgibbs.com> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> When I've employed such patterns, I've been under the impression that
> they fell under the umbrella of "Factory".  Perhaps, though, you are
> looking for a sub-pattern of Factory?
> 
> Maybe the obviousness of the answer is what is making you have a hard
> time finding it? :-)
> 
>   -- Andrew
> 
> 
> On Tue, 26 Apr 2005, Trey Harris wrote:
> 
> > There's a design pattern whose name I'm having trouble remembering (which
> > is making it hard for me to look up any literature on it).  I'm hoping
> > maybe someone here can help me.
> >
> > I thought it was called the "recognizer" pattern, but Googling isn't
> > turning up anything by that name.  Basically, you have a data blob, and a
> > list of candidate classes, and you throw the data at the classes one by
> > one until one of them "recognizes" the blob and returns an object
(Continue reading)


Gmane