Author Topic: Refactoring  (Read 10031 times)

idiallo

  • New Community Member
  • Posts: 1
  • Hero Points: 0
Refactoring
« 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: http://www.gamesfromwithin.com/articles/0510/000102.html

gavink

  • Community Member
  • Posts: 14
  • Hero Points: 0
Re: Refactoring
« Reply #1 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.

Wanderer

  • Senior Community Member
  • Posts: 557
  • Hero Points: 23
Re: Refactoring
« Reply #2 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.

natros

  • Community Member
  • Posts: 59
  • Hero Points: 1
Re: Refactoring
« Reply #3 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.

mrothman

  • Senior Community Member
  • Posts: 122
  • Hero Points: 1
Re: Refactoring
« Reply #4 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.

Dennis

  • Senior Community Member
  • Posts: 3955
  • Hero Points: 515
Re: Refactoring
« Reply #5 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 support@slickedit.com.

bob

  • Junior Community Member
  • Posts: 2
  • Hero Points: 0
Re: Refactoring
« Reply #6 on: July 16, 2006, 10:56:53 AM »
If you use the boost libraies, SlickEdit does not refactor.