Newbie questions...

Anthony Hannan ajh18 at cornell.edu
Thu Aug 22 22:38:55 UTC 2002


Konrad Hinsen <hinsen at cnrs-orleans.fr> wrote:
> Ned Konz <ned at bike-nomad.com> writes:
> > Change sets maintain related code changes under a name.
> So I suppose it is the programmer's task to define what goes into
> a change set?
> On what level do change sets work? Class, method, code line... ?

Methods and class definitions (var changes).

> > Projects let you save a World in binary format with all its objects. 
> > You can also choose to save the current Change Set with the project.
> But which objects exactly are part of a project? Everything in
> Smalltalk is an object, after all. If I open a System Browser in a
> project and add a method to an existing class, does that class become
> part of the project? Or just the method? Or neither?

Every project has its own changeset (which can be changed in the change
sorter).  And all changes done within a project are recorded in the
project's changeset.  If the project is marked "isolated" then its
changes are only seen in it and its non-isolated children.  Other
projects won't see those changes.  If the project is not isolated then
parent projects will also see the changes.

Besides the changeset, all objects in the image segment of a project are
loaded and unloaded together.  The image segment (see ImageSegment
class) of an object A contains all objects that would otherwise be
garbage collected if A didn't exist.  So for a project, all morphs
attached to its world morph (the screen) will be in its image segment.

> > MVC hasn't changed much at all, though there have been new tools 
> > added.
> My impression from browsing various sites is that nobody uses MVC
> any more except for compatibility. Is that correct? In other words,
> should I simply forget about MVC?

If you want to use Projects, you should use Morphic.  Morphic is the new
way of doing Squeak interfaces.  MVC is the old way.  Although both are
still used.

Cheers,
Anthony



More information about the Squeak-dev mailing list