Back

Explore Courses Blog Tutorials Interview Questions
0 votes
1 view
in Salesforce by (11.9k points)

The company that owns the company that I work for has recently decided unilaterally that the salesforce.com and force.com platform are where we are headed. Currently, we're a C# .NET shop and we frequently use Visual Studio and Resharper in our daily work.

I'm not happy about this decision but, like any good developer, I'm willing to give it a chance and investigate this new technology to see what things might be like if I'm forced to make the decision to transition from a .NET to a APEX developer. So far, I must admit to not being all that impressed with the Force.com platform. To be fair, there are somethings that seem quite ok...but other things just suck...just look at their ideas on what constitute good unit tests.... Luckily, those sort of mistakes are something I can avoid by actually writing proper unit tests regardless of how much the people behind salesforce.com's documentation suck....

However, and sorry for the rant (I just really needed to get that off my chest), the one thing that I've found missing that I know I'd really miss is a good refactoring tool like Resharper. As a .NET developer, Resharper makes it possible to do a lot of heavy lifting that I would otherwise be hesitant to do. It also makes developing TDD style much easier cause I can easily create new methods and properties with just a few keystrokes. As such, I'm on the lookout for any sort of refactoring tool that is available for Eclipse and the APEX programming language. I've downloaded and installed the tools recommended by the force.com developers site but so far I have seen very little in the way of refactoring support.

Does anyone know of the existence of any refactoring tools for use with the APEX programming language?

1 Answer

0 votes
by (32.1k points)

There are two choices for Apex refactoring tools:

  1. Illuminated Cloud plugin for IntelliJ
  2. Welkin Suite based on Visual Studio

Both will meet most of your requirements.

But I believe IntelliJ + Illuminated Cloud is a better fit.

Both are licensed and pricy.

IntelliJ

  • Renaming classes and updating all references +
  • Renaming method names and updating all references +
  • Finding usages of class/method +
  • Finding redundant code +/- (If I remember well it highlights parts of the code which can be refactored to methods)
  • Change Signature +
  • Convert Interface to Abstract Class +/- (Hmm didn't try that but I think it can be done fairly well with IntelliJ refactoring capabilities
  • Convert Abstract Class to Interface +/-
  • Extract Superclass +
  • Transform Parameters + (Extracting fields you mean?)
  • Replace Constructor with Factory Method +
  • Convert Method to Property +

Browse Categories

...