agiles 2014 - the transformation priority premise

Post on 06-Jul-2015

421 Views

Category:

Software

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

These are the slides of my presentation at Agiles 2014. Link to the talk: http://agiles2014.sched.org/event/75e37d1ff07889d60d102b1386e0358d#.VElttb5gvww

TRANSCRIPT

The Transformation Priority Premise

Fernando Di BartoloÁgiles 2014, Medellín, Colombia

@fdibartolo

disclaimer

failing test

make it pass

refactor

TDD cycle

22

1

3

√√ As the tests get more specific

the code gets more generic

4Rules of TDD

word wrap kata

ref: http://codingdojo.org/cgi-bin/index.pl?KataWordWrap

https://github.com/fdibartolo/agiles_2014

unconditional if splitting the execution path

variable assignment replacing the value of a variable

scalar arrayarray containerstatement recursionif whileexpression function replacing an expression with a function or algorithm

!{} nil no code at all to code that employs nilnil constantconstant constant+ a simple constant to a more complex constantconstant scalar replacing a constant with a variable or an argumentstatement statements adding more unconditional statements

http://blog.8thlight.com/uncle-bob/2013/05/27/TheTransformationPriorityPremise.html

There are likely others

unconditional if splitting the execution path

variable assignment replacing the value of a variable

scalar arrayarray containerstatement recursionif whileexpression function replacing an expression with a function or algorithm

!{} nil no code at all to code that employs nilnil constantconstant constant+ a simple constant to a more complex constantconstant scalar replacing a constant with a variable or an argumentstatement statements adding more unconditional statements

http://blog.8thlight.com/uncle-bob/2013/05/27/TheTransformationPriorityPremise.html

There are likely others

unconditional if splitting the execution path

variable assignment replacing the value of a variable

scalar arrayarray containerstatement recursionif whileexpression function replacing an expression with a function or algorithm

!{} nil no code at all to code that employs nilnil constantconstant constant+ a simple constant to a more complex constantconstant scalar replacing a constant with a variable or an argumentstatement statements adding more unconditional statements

http://blog.8thlight.com/uncle-bob/2013/05/27/TheTransformationPriorityPremise.html

There are likely others

unconditional if splitting the execution path

variable assignment replacing the value of a variable

scalar arrayarray containerstatement recursionif whileexpression function replacing an expression with a function or algorithm

!{} nil no code at all to code that employs nilnil constantconstant constant+ a simple constant to a more complex constantconstant scalar replacing a constant with a variable or an argumentstatement statements adding more unconditional statements

http://blog.8thlight.com/uncle-bob/2013/05/27/TheTransformationPriorityPremise.html

There are likely others

unconditional if splitting the execution path

variable assignment replacing the value of a variable

scalar arrayarray containerstatement recursionif whileexpression function replacing an expression with a function or algorithm

!{} nil no code at all to code that employs nilnil constantconstant constant+ a simple constant to a more complex constantconstant scalar replacing a constant with a variable or an argumentstatement statements adding more unconditional statements

http://blog.8thlight.com/uncle-bob/2013/05/27/TheTransformationPriorityPremise.html

There are likely others

unconditional if splitting the execution path

variable assignment replacing the value of a variable

impasses

Thanks!

@fdibartolo

fernando.di.bartolo

top related