Microsoft has responded to a small but significant upswell in interest in VB software refactoring by offering a free refactoring plug-in for the upcoming Visual Basic 2005 release. The plug-in, called Refactor! for Visual Basic 2005, was not created in-house but by Developer Express Inc., a Las Vegas company that provides tools to improve the developer experience.
In refactoring, newly developed or legacy software is rewritten to simplify its structure, while hopefully increasing its maintainability and "human readability." Programs [known as refactorings] step through code and note places where steps could be saved or where readability could be improved. This trait is particularly useful among VB6 shops that are migrating applications to .NET.
"We've seen a lot of interest in the VB community in refactoring," said Jay Roxe, product manager for Microsoft Visual Basic. He expects to see more such interest for new code and as firms pursue large projects in Visual Basic 2005.
Developers expected refactoring to be supported in VB 2005, but it was jettisoned by Microsoft . After numerous bloggers criticized the move, Microsoft forged its partnership with Developer Express.
According to Roxe, the Refactor! for Visual Basic 2005 tool was selected on the basis of criteria such as completeness of solution, number of refactoring schemes supported, and integration with the editor. "It felt very much as [does] the Visual Basic tool with which developers works," he said. "It doesn't have a lot of modal dialog boxes popping up. It feels to be part of the overall Visual Studio experience."
The standard refactoring product is more oriented toward consuming refactoring than creating them. Developer Express will offer a Refactor! Pro edition that allows developers to build their own refactorings for VB 2005, VB 2003 and C#, said Richard Morris, CTO of Developer Express.
Refactoring is still at the stage where it means different things to different people. Morris defines it as "the process of shaping code to make it easier to read and cheaper to maintain.
"What refactoring does in the background is it parses the code underneath the caret," Morris said. "If it is determined so, a refactoring can be applied." Refactoring understands how code can be shaped or tweaked and provides a set of options, he continued, but noted that the actual tweaking is entirely in the control of the developer, he noted.
Refactor! for Visual Basic 2005 is available for download at http://msdn.microsoft.com/vbasic/downloads/2005/tools/refactor or http://www.devexpress.com/vbrefactor. The current version supports Visual Studio 2005 beta 2. Refactor! for Visual Studio 2005 will support all future versions of Visual Studio 2005, including the final release.