"The Transformation Priority Premise (TPP) is a programming approach developed by RobertCecilMartin (UncleBob) as a refinement to make the process of test-driven development (TDD) easier and more effective for a computer programmer."
-- http://en.wikipedia.org/wiki/Transformation_Priority_Premise
Blog:
http://blog.8thlight.com/uncle-bob/2013/05/27/TheTransformationPriorityPremise.html
The Transformations:
- ({}–>nil) no code at all->code that employs nil
- (nil->constant)
- (constant->constant+) a simple constant to a more complex constant
- (constant->scalar) replacing a constant with a variable or an argument
- (statement->statements) adding more unconditional statements.
- (unconditional->if) splitting the execution path
- (scalar->array)
- (array->container)
- (statement->recursion)
- (if->while)
- (expression->function) replacing an expression with a function or algorithm
- (variable->assignment) replacing the value of a variable.
Uncle Bob also explicitly stated: "There are likely others".