My refactoring heuristics (4)
“Refactoring is a disciplined technique for restructuring an existing body of code, altering its internal structure without changing its external behavior. Its heart is a series of small behavior preserving transformations. Each transformation (called a ‘refactoring’) does little, but a sequence of transformations can produce a significant restructuring. Since each refactoring is small, it’s less likely to go wrong. The system is also kept fully working after each small refactoring, reducing the chances that a system can get seriously broken during the restructuring. “
Test Automation / VBScript / Refactoring
Subject: Function Library
Heuristic: Group Constants Together
1) If you have a few constants (or hard-coded values) used in private or public functions within a function library, move them to a heading section, and re-declare as private or public, depending on the scope.
2) If you have a significant number of constants used by functions from different libraries, consider creating a separate library to keep all constants together in one place.
3) If you have a set of constants, for instance, like test log messages, group the entire set in an array or Dictionary type of structure.
Heuristic: Redundant Functions
Review mid-level function libraries, and move duplicating low-level functions away.
Examples: math operations, string or date functions.
Heuristic: Unit Tests
Keep the code you wrote to test or debug your functions [in a separate library]. Even if it’s written “dirty way”, it still might be better than write from scratch next time.