SlickEdit Community

SlickEdit Product Discussion => SlickEdit® => Topic started by: idiallo on July 11, 2006, 06:25:30 pm

Title: Refactoring
Post by: idiallo on July 11, 2006, 06:25:30 pm
Does anyone have experienced with the V11 refactoring functions ? My own experience was pretty much the one described by that review of the V10:
Title: Re: Refactoring
Post by: gavink on July 12, 2006, 02:29:55 am
My experience with SlickEdit C++ refactorings is hardly auspicious. I have had quick rename working but with every other refactoring SlickEdit charges off on a detailed analysis of every file in the workspace and after a reasonable pause, analysing thousands of files, it trips up on a header file in our compiler library. So I have not been even as successful as the review link you gave. Sorry.
Title: Re: Refactoring
Post by: Wanderer on July 12, 2006, 03:56:43 am
Unfortunately, my experience has been along the lines of gavink's.  I've seen refactoring work on small test projects, but on our real projects SlickEdit seems overwhelmed by the complexity of preprocessing (for managed and unmanaged C++ projects) or the complexity of the .Net framework (for C# projects).
Haven't yet used it successfuly.  Either ends with error messages, or hangs, or takes so long to process it might as well be hung.
Title: Re: Refactoring
Post by: natros on July 12, 2006, 09:36:04 am
The only part that works with me is Quick Refactoring, it's far from perfect but helps.
Title: Re: Refactoring
Post by: mrothman on July 12, 2006, 10:34:18 am
I've had the same experience as others.  I will say in SlickEdit's defense that our work typically involves projects with almost 10000 c++ files.  My attempts at refactoring always end up with SlickEdit failing to understand some overly complex idiom in an include file or something similar.

Since I'm often trying to refactor something used only in a small subset of the project,  it would be nice to have an option to specify a scope for the refactorings.  I suppose alternatively, one could just make a project or even a configuration containing only the target files.  Of course, that introduces the possibility that I'll miss one, and it eliminates entirely the ability to refactor code if you're not sure what files might be using it.
Title: Re: Refactoring
Post by: Dennis on July 12, 2006, 02:40:16 pm
Just a quick note, since someone mentioned managed C++.  The refactoring engine does not yet support managed C++.  It is on our roadmap, but it's a long road.  The same can be said for supporting G++ 4.x with the refactoring engine.

We are working hard to fix the remaining issues in the parsing engine.  For supported compilers, the majority of the issues we see reported are due to setup issues, include paths or -D options that are not set up correctly, or the Boost library, which does such horrific things exploiting the preprocessor, it makes compiler writers want to cry.

If you encounter parsing problems.  I encourage you to whittle them down to a small, but complete example project and submit it to
Title: Re: Refactoring
Post by: bob on July 16, 2006, 10:56:53 am
If you use the boost libraies, SlickEdit does not refactor.