|
Re: which code browser to use?: msg#00143lang.smalltalk.squeak.beginners
Nick Ager wrote: Hi, It really depends on your preference. Try them; I've been Squeak for quite a few years and I've only really ever needed to use the standard Browser. The Browser and HierarchyBrowser are standard tools in a standard image. I don't know much about the OmniBrowser, but I think it's an intelligent re-design of the standard browser in that it looks the same but works much more intelligently under the covers. I think people use it as a starting point for developing experimental browsers. Shout is a package that gives you syntax hilighting, so the ShoutOmniBrowser is Shout plus the OmniBrowser. eCompletion is a package that gives you keyword completion (ala other IDEs)... ditto for eCompletionOmniBrowser. The WhiskerBrowser has a completely different UI - some people swear by it. The ones I haven't mentioned are the ones I don't know anything about.
Again, I just use the standard browser. Personally I'm dissatisfied with it because it's completely non-obvious as to how you're meant to use it - even after a few years, I still haven't worked out what the "standard" way of defining a new method is; usually I just cheat and modify an existing method with a new name. You'll also find that a lot of the functionality you need is done in other places in the image. The biggest "Aha!" moment for me was discovering alt-n ("find senders of...") and alt-m ("find implementers or...") - select text and press those keys.
I've just had a look in the image. This is what I did: 1. I vaguely recall being asked what "Tool set" I wanted to use at some stage, so I opened up my bog-standard browser :-) and tried to find any class with the word "Tool" in the name. I saw a class called "ToolSet" so I looked at that. 2. "ToolSet" has no instance methods, so I looked at the class methods. 3. This looks like it - there's a method called #browse:selector:, so I looked at that. That calls the method "default" which isn't there. 4. Looking for the implementation of "default", I opened up a hierarchy browser on ToolSet and looked up the inheritance hiearchy. I found the implementation in AppRegistry. That calls "self askForDefault". 5. I look at the implementation of "askForDefault" in the same class. At a brief glance, it has UI code in it, so I try calling it: ToolSet askForDefault. There you go. Michael.
|
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | Re: Re: Tracing back objects, subbukk |
|---|---|
| Next by Date: | Re: package browsers, Michael van der Gulik |
| Previous by Thread: | which code browser to use?, Nick Ager |
| Next by Thread: | package browsers, Nick Ager |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
| News | FAQ | advertise |