Lists Home |
Date Index |
- From: David Brownell <db@Eng.Sun.COM>
- To: email@example.com
- Date: Mon, 12 Oct 1998 10:08:46 -0700
Peter Murray-Rust wrote:
> Question in return, what exactly is delegation and can
> you give an example. [It's been mentioned both in the
> context of Java classes and link-catalogs].
Delegation is when you make a request to "something" and
instead of handling the request itself, it hands it off
to "something" else and then returns what that returns.
Sort of like a subroutine call; managers delegate tasks
to employees, and so on.
When used with object oriented systems (like those folk
write in Java) delegation presumes a shared interface.
If a class supports a set of methods, it can delegate
the implementation of those methods to any other class
that supports them. Sometimes "adapters" can be used to
patch up minor "impedence mismatches" in terms of the
signatures (or sometimes semantics) of the methods.
When one talks about implementing naming systems (GIs touch
on naming issues :-) there are three general mechanisms
to be concerned with. Delegation is one of them, sometimes
called "chaining". Redirection is another, sometimes called
"forwarding" (we all understand HTTP redirects, yes?). A
third is Partitioning -- e.g. entries in an Encyclopaedia
are partitioned alphabetically, A-B, C-E, etc, and either
a client or a server might try a partitioned search.
Since naming is so fundamental to system structuring, such
techniques show up all over the place. Hence the overlap in
terminology: it really is the same technique.
xml-dev: A list for W3C XML Developers. To post, mailto:firstname.lastname@example.org
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:email@example.com the following message;
To subscribe to the digests, mailto:firstname.lastname@example.org the following message;
List coordinator, Henry Rzepa (mailto:email@example.com)