Comparing Refactor Pro, ASP.NET and VB.NET

Written on May 10, 2007

Developer Express have released new versions (2.2.2) of their ASP.NET and VB.NET refactoring tools.

These are both free cut-down versions of their Pro product (USD99 per license).

I was curious as to what the overlap was between the three products, as they don’t appear to have a nice comparison table on their website. So here’s list of the included refactorings in each edition:

Refactor! Pro Refactor for ASP.NET Refactor for VB + Bonus
Add Block Delimiters    
Add Parameter   Add Parameter
Add Validator Add Validator  
Boolean to Enum    
Break Apart Parameters    
Case to Conditional    
Change Tag    
Collapse Accessors    
Combine Conditionals    
Compress to Null Coalescing Operation    
Compress to Ternary Expression    
Conditional to Case    
Convert to HEX    
Convert to Named Color    
Convert to RGB    
Create Method Contract   Create Method Contract
Create Method Stub    
Create Multi-variable Declaration    
Create Overload Create Overload Create Overload
Create Setter Method    
Create With Statement   Create With Statement
Decompose Parameter    
Encapsulate Field Encapsulate Field Encapsulate Field
Expand Accessors    
Expand Null Coalescing Operation    
Expand Ternary Expression    
Extract ContentPlaceHolder Extract ContentPlaceHolder  
Extract ContentPlaceHolder (and create master page) Extract ContentPlaceHolder (create master page)  
Extract Function (outside of class)    
Extract Interface Extract Method Extract Interface
Extract Method Extract Property Extract Method
Extract Property Extract Style (Class) Extract Property
Extract Style (Class) Extract Style (id)  
Extract Style (id) Extract to User Control  
Extract to User Control Flatten Conditional  
Flatten Conditional   Flatten Conditional
ForEach to For    
For to ForEach    
Inline Format Item    
Inline Macro    
Inline Recent Assignment    
Inline Result Inline Temp  
Inline Temp   Inline Temp
Inline With Statement Introduce Constant Inline With Statement
Introduce Constant   Introduce Constant
Introduce ForEach Action    
Introduce Format Item Introduce Local  
Introduce Local Introduce Local (replace all) Introduce Local
Introduce Local (replace all)   Introduce Local (replace all)
Introduce Result Variable    
Introduce Setter Guard Clause    
Line-up Arguments    
Line-up Parameters    
Lock to Try/Finally    
Method to Property Move Declaration Near Reference Method to Property
Move Declaration Near Reference Move Initialization to Declaration Move Declaration Near Reference
Move Initialization to Declaration   Move Initialization to Declaration
Move Method to Header    
Move Method to Source File Move Style Attributes to CSS  
Move Style Attributes to CSS Move to Code-behind  
Move to Code-behind    
Move Type to File    
Property to Method   Property to Method
Optimize Namespace References    
Remove Assignments to Parameters   Remove Assignments to Parameters
Remove Block Delimiters    
Remove Empty Handler    
Remove Parameter   Remove Unused Parameter
Remove Private Setter    
Remove Redundant Conditional    
Remove Setter Guard Clause    
Remove Tag    
Remove Type Qualifier    
Rename File to Match Type    
Rename Style Rename  
Rename   Rename
  Reorder Parameters Rename Local
Reorder Parameters Replace Temp with Query Reorder Parameters
Replace Temp with Query   Replace Temp with Query
Replace with Alias    
Replace with Constant    
Replace with Local Reverse Conditional  
Reverse Conditional Safe Rename Reverse Conditional
Safe Rename Simplify Expression Safe Rename
Simplify Expression Split Initialization from Declaration Simplify Expression
Split Initialization from Declaration   Split Initialization from Declaration
Split Multi-variable Declaration Split Temporary Variable  
Split Temporary Variable   Split Temporary Variable
Split With Statement Surround with Update Panel  
Surround with Update Panel    
Use IsNullOrEmpty    
Use StringBuilder    
Use String.Compare    
Use String.Format   Use String.Format
Using to Try/Finally    
Widen Scope   Widen Scope

Categories: .NET