Simple Morphic project

Dean_Swan at Mitel.COM Dean_Swan at Mitel.COM
Mon Aug 16 22:42:26 UTC 1999



From:  Dean Swan at MITEL on 08/16/99 06:42 PM

You shouldn't really be irritated by the very common human behavior of using a
"prototype" or best-known implementation to represent a class.  I am not
familiar with any other instantiations of the Model-View-Controller paradigm,
therefore, the Blue Book GUI is my "prototype" for MVC.

In any case, back on topic, Morphic does separate the model from the view, so I
would consider it only a higher level abstraction of "an MVC style
architecture", and not much higher at that.  It's major contribution seems to be
a richer set of common behavior across Views of different classes of objects.

All I was trying to say is that I don't see any fundamental differences in
concept between the Morphic interface (as implemented in Squeak) and the Blue
Book GUI.  If there are fundamental differences, I would be most appreciative of
any enlightment that could be offered.


                                         -Dean Swan






Alan Lovejoy <sourcery at pacbell.net> on 08/16/99 07:27:05 PM

Please respond to squeak at cs.uiuc.edu

To:   squeak at cs.uiuc.edu
cc:    (bcc: Dean Swan/Ogd/Mitel)

Subject:  Re: Simple Morphic project




> ** Original Sender: Dean_Swan at Mitel.COM
> From:  Dean Swan at MITEL on 08/16/99 05:47 PM
>
> I personally think Morphic is MVC in fancy clothes.  Am I missing something
very
> basic here, or have I just pointed out the nature of the Emperor's new
clothes?

Ah, yes.

I find it both very common, and very irritating, that people wrongfully label
the Blue Book GUI architecture as "MVC," as though the two were synonyms.
They are not.  See, for example, Trygve Reenskaug's book, "Working With
Objects." (Mr. Reenskaug invented MVC architecture while on sabbatical
at Xerox PARC in the late seventies).

The Blue Book GUI is **an implementation** of an MVC-style architecture.
Any GUI that defines separate roles for a "view," a "controller," and a "model"
is an MVC architecture.  Note that one object can play two or more roles,
as long as it is architecturally possible to allocate the three roles to
different objects when desired (see, for example, modern VisualWorks).

I would also contend that separating the model from the view is what really
matters about MVC.

--Alan





More information about the Squeak-dev mailing list