On Fri, May 14, 2004 at 10:50:31PM +0100, Steve Harris wrote:
I dont really see the avantage of this - control and
description are
seperate tasks, and not even closely related.
Very closely related if you consider that the ultimate purpose of a
description is to control something. Why should there be any difference
between
A. a description of a plugin's interface,
B. a set of commands that make a host accomodate the plugin ?
Just imagine that the plugin is something that is created dynamically
by a client of the host, rather than a set of static files.
I've been using this 'pattern' for years now in all my professional
work, and it's immensely practical. All of my major applications are
MCV based, and none of them have any specific initialisation or
configuration code - all of that is done just by sourcing a command
file that is parsed by the same code that handles client commands.
In some cases they do not even read a file, they just connect to a
default client that will configure them and then log off.
If you find the use of the term 'client' strange in this context,
just consider that in an MCV based system, the GUI is a 'client'.
--
FA