About

Automated Code Transforms (Automated Refactoring)

Refactoring is the act of improving your source code without changing its behavior. So - your business logic stays intact, but something in the source code gets improved which makes it easier to work with, more portable to other platforms, easier to translate...

Refactoring deals with things that are tedious, time consuming, and ultimately, expensive. These are things that should be automated! We can build you the automated transform tools that you need to save you weeks or months of effort.

Review Changes DialogReview Changes Dialog

Here we automate the transformation from string concatenation to the use of a single string with SUBSTITUTE. This is done because the full sentence in a single string is easier to translate (for i18n) than the sentence fragmented into two strings.

Proparse enables complex code transformations, where context and semantics must be examined. These kinds of refactoring cannot be done with simple search and replace tools. Refactoring Toolkits such as ProRefactor are critical for making software "soft" again, and are key to making agile development really work, maintenance programming less expensive, etc.


Benefits

SUBSTITUTE Refactoring

Automates this necessary step towards making your application translatable. If you need to make your application translatable, ProRefactor can save you weeks of effort, and pay for itself with this one refactoring alone.

NO-UNDO Refactoring

Automates the process of finding and fixing all DEFINE VARIABLE statements which are missing the NO-UNDO option. Most 4gl programmers today already know to do this, but there is a lot of really old code out there. This refactoring can represent a fundamental step in fine tuning your application source for better overall application performance.

Names Refactoring

Automates the process of finding and fixing all database table and field names which are either abbreviated or else use the wrong case (UPPERCASE/lowercase). Abbreviated names are known to be problematic, especially in a system with an evolving schema. Changing the case on table and field names can help accelerate the integration of a third party's source code base into your own source base, or could help accelerate code "cleanup" projects.

Qualify Field Names Refactoring

Automates the process of adding table/buffer names to unqualified field names. Unqualified field names can lead to to bugs which are difficult to find.

Rename Schema

Finds and changes all hard-coded references to schema table and field names. This saves you from a large portion of the manual effort required when renaming schema elements.