Refactoring SystemDictionary
William Cole
jumpstart at csi.com
Mon Apr 14 12:26:10 UTC 2003
Greetings Sephane. Don't believe we've ever met.
A topic near and dear to my heart. I agree conceptually with Tim R's
previous remarks. Restating the problem: The major challenge with
SystemDictionary is that its been used as a catch-all for system
housekeeping functions. Now its severely overloaded.
Compounding this is the goal of evolving the image to support multiple
Environments. If you want to implement multiple Environments in Squeak,
you discover a significant problem with inheriting features (and
image-level visibility) from SystemDictionary that would be inappropriate
for the majority of Environments to have.
I don't see it being so important as to precisely *where* things are
refactored to, so much as the refactoring of SystemDictionary takes
place. Here's the take on redistributing SystemDictionary that I'm using:
- Move all Class and method queries into Environment.
- Move all Image-level queries into the class that holds all Environments
for the image.
- Move all VM Management (Power management, VM settings & queries, etc.),
to another System Support class (I created class VMSupport to hold this).
- Move all Image Management (Packaging/stripping, Profiling, removing
Undos, Instance queries, Startup/shutdown, etc.) to another System Support
Class (I've created ImageSupport to hold these).
- Move all Change management functions to one of the Changes Classes.
The above would accomplish most goals for refactoring System Dictionary.
Regards;
Bill Cole
>Stephane Ducasse <ducasse at iam.unibe.ch> wrote:
>
> > hi all
> >
> > I would like to have your point of view on how to clean
> > SystemDictionary.
More information about the Squeak-dev
mailing list
|