Uhh, could some explain what this Refactoring Browser does?
Why is it so special?
I mean, I've downloaded the code but didn't get the idea.
Regards, Reinier.
On Fri, May 01, 1998 at 01:13:28AM +0200, Reinier van Loon wrote:
Uhh, could some explain what this Refactoring Browser does?
Why is it so special?
Havn't used all its features under VA yet, currently I like it most for helping me to clean up my initial hackings. Besides many other things it can:
o rename methods (the selector and all references to it)
o push up methods into a common superclass (removing duplicates in sibblings)
o push down variables into subclasses
o create a new method from a text selection
o format methods based on definable rules
o its 'lint' tool checks methods e.g. for unused locals
The was an article about it in the SmalltalkReport (Jan 98?)
-j|g -- Joerg Rade | How could I know what I say | jr@petz.han.de Birkenstr. 32 | before I hear what I think? | +49 511 9887497 D-30171 Hannover +-----------------------------+ S: Schlaegerstr.
At 01:13 AM 5/1/98 +0200, you wrote:
Uhh, could some explain what this Refactoring Browser does?
Why is it so special?
I mean, I've downloaded the code but didn't get the idea.
For a quick definition of refactoring, look at:
http://st-www.cs.uiuc.edu/users/brant/Refactory/Terms.html#refactorings
For some more in-depth information on refactoring and it's various permutations, you might find the papers at the following URL useful:
ftp://st.cs.uiuc.edu/pub/papers/refactoring/
Here is the synopsis from a readme file at the /papers level:
""Refactorings are program transformations that do not change the function ""of a program, just its structure. They are usually applied to make a program ""more reusable. We focus on refactoring OO programs. ""refactoring: ""opdyke-thesis.ps.Z "" Bill Opdyke's thesis ""refactor-aggregation.ps "" A paper that describes refactorings involving aggregation. ""refactoring-superclasses.ps "" A paper that describes refactorings involving inheritance.
For more information on the browser itself, look at:
http://st-www.cs.uiuc.edu/users/brant/Refactory/
While you're there, you might look at all the other neat papers thar Ralph Johnson and his students have written about patterns, frameworks and other useful topics.
Regards,
Tom Tom Robinson
tom.robinson@halcyon.com thomas.h.robinson@boeing.com 425-865-5751 (work)
At 01:13 AM 5/1/98 +0200, Reinier van Loon wrote:
Uhh, could some explain what this Refactoring Browser does?
Why is it so special?
I mean, I've downloaded the code but didn't get the idea.
The Refactoring Browser is different things to different people. To some it is a better browser than the default browser since it includes things like buffers, window/menus/icons viewers, the ability switch between hierarchy/category views, etc. These people like it since they don't need to open 10 different windows to work.
Other people use the browser for the code critic part (Smalllint). They want to make sure they haven't done anything "stupid" in their code. Some even make all their code pass certain Smalllint rules before it can be released.
Still others like the browser for the refactorings. They use the browser to clean up their code. They perform functions such as renaming methods/variables/classes, extracting code, moving variables/methods to other classes, etc. While they could do these functions by hand, they rely on the browser to do them quicker, safer, and easier than they could by hand.
The last group uses the browser for quick transformations to their code using the rewrite tool. However, I don't know of anyone using just the rewrite tool without the other parts.
Myself, I use the Refactoring Browser for all the above reasons :).
John Brant
squeak-dev@lists.squeakfoundation.org