Tuesday, August 7, 2007

Refactoring Tools for Java and .NET

Refactoring is the process of changing a software system in such a way that it does not alter the external behavior and result of the code yet improves its readability and internal structure. Object oriented developers recognize the value of refactoring working code. Until recently good tools have not been available. This list contains Refactoring tools and IDEs features Refactoring support.

Java
Eclipse - provides a powerful set of automated refactorings that, among other things, let you rename elements, move classes and packages, create interfaces from concrete classes, turn nested classes into top-level classes, and extract a new method from sections of code in an old method. Becoming familiar with Eclipse's refactoring tools is a good way to improve your productivity.
IntelliJ Idea - features totally unmatched refactoring capabilities. Rich set of refactorings (50+) covers virtually every aspect of code transformation and lets you effectively maintain and upgrade your projects. All refactorings are aware of supported languages and technologies like Java, XML, JSP, EJB, Javascript and Ruby and provide an effective way to flexibly manage your code.
RefactorIt - tool for Java developers. A developer can take source code of any size and complexity and rework it into well-designed code by means of over automated refactorings. It may be used as a stand-alone tool or installed as a plug-in to Eclipse, NetBeans, JDeveloper, and JBuilder.

JRefactory - a plug-in for JBuilder, NetBeans, and Jedit. Also does UML diagrams.

Transmogrify - Java source analysis and manipulation tool. The current focus of Transmogrify is as a cross-referencing and refactoring utility.Available as a plug-in for two IDEs: Borland's JBuilder, and Sun's Forte4Java.

JafaRefactor - provides a means of automatically refactoring compilable Java source code using a small catalog of refactoring patterns. This currently includes class, field, method, and package renaming and PushDown and PullUp of methods and fields in an inheritance hierarchy. Other refactorings should be added in a future version.
XRefactory - an emacs plug-in that is professional development tool for C and Java providing code completion, source browsing and refactoring.

JBuilder - Borland's primary tool offers some refactoring support. Various plug in tools offer deeper support.
JFactor - a plug-in tool - works with JBuilder and Visual Age. Instantiations is a well respected outfit with a long history in Smalltalk and Java VM and compiler technology.

.NET
ReSharper - brings unrivalled code analysis, a superior unit testing solution, Go to Symbol navigation, a handy To-do Explorer with multiple unit test sessions, and many other features - to boost individual and team productivity in the world of .NET development.

C# Refactory - performs a large number of refactorings, allowing you to re-shape your c-sharp code as needs arise. Refactoring is an essential part of the extreme programming development approach. C# refactory enables you to automate many refactorings thus increasing the reliability and speed with which you can refactor your c-sharp code.

Refactor! - free version code refactoring tool includes 29 time-saving refactorings and is available to all developers working in Visual Studio 2005 and Orcas Beta 1.

Visual Assist X - Refactoring tool for Visual Studio handling all three .NET languages. Features are suggestions, acronyms and autotext, enhanced syntax coloring, case correction and error underlining, easy access to methods, and hovering class browser

JustCode! enhances Visual Studio with solution-wide on-the-fly error checking, smart code navigation features, refactoring and other powerful coding tools for C#, J#, Visual Basic .NET, ASP.Net, JavaScript and HTML.

Please visit Martin Fowler's site for more refactoring resources.

See Also;

No comments: