Need your feedback on trait IDE usability

Adrian Lienhard alienhard at netstyle.ch
Tue Jul 20 19:51:16 UTC 2004


Thanks for the feedback!
>
> - the browsers all get very slow in accepting changes

My impression was that the OmniBrowser (also in the non-traits version) 
is slow with accepting methods (approx. 1 second) but not the old green 
browser. Do you have other experiences, maybe with huge traits or 
something?

Btw, concerning speed, our implementation does its "work" at 
composition time (when you compile a method or when you apply a trait 
composition). There is no speed loss at runtime at all.

> - I had to implement TraitBehavior>>inheritsFrom: (always returning 
> false) in order to be able to open a rb browser on a trait. the cause 
> was RefactoringBrowser>>isTestCase:

ok. There may be other tools that need things like that to work with 
traits.
>
> - I made a trait by copying a few methods from one of my classes, then 
> modified the class definition to have it use that new trait, and 
> eventually I removed from the initial class the methods implemented in 
> the trait. at this point I found very confusing that removing such a 
> method appears not to do anything (of coure it does, but the method 
> from the trait looks exactly the same in the browser display !)

Yes, right. Tool support still is very basic. The TraitsBrowser, 
though, shows you the difference: Methods that come from traits have 
green selectors (conflicts have red ones). But the browser does not 
show which trait the method comes from, yet.

> - in a normal browser on a class, the new methods from a trait appear 
> under the category 'as yet unclassified'... I guess it should better 
> be a category named from the trait name

The scheme we have chosen here is to categorize the methods under the 
same category as in the trait in which they are defined. If you move 
methods in traits they will also be synced in your class. I think it 
makes sense to provide the information what category the method belongs 
to. Which trait it comes from should be shown somewhere else in the 
ui...

>
> - I had to implement TraitBehavior>>withAllSuperclasses to get rid of 
> an error when selecting a method category in a browser on a trait
>

I can't reproduce this. Can you help me?

Thanks,
Adrian

>
> this looks very promising, though :)
>
>
> Stef
___________________
Adrian Lienhard
www.adrian-lienhard.ch
www.netstyle.ch




More information about the Squeak-dev mailing list