programmingkatas

Post on 15-Jan-2015

2.003 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Programming Kata is a practice to improve your programming skills through something called "deep practice"

TRANSCRIPT

programming

Katas

“IfI would

have had

time...”

“You will never

have time!

you canbe faster

Practicemakes YOU

better...

deepPractice

makes YOU...

perfect

Should be

challenging

the kaizenway

Should be

REpeatedmany times

Should receive

feedback(be the best,

be the worst)

perfect

Stringcalculator

Kata

Original kata by Roy Osherove from http://osherove.com/tdd-kata-1

1. Create a simple String calculator with a method Add(string numbers).• can take an unknown amount of numbers separated by a comma, and will return their sum• for an empty string it will return 0• for “1” it will return 1• for “1,2” it will return 3• for “5,7,10,3” it will return 25

Original kata by Roy Osherove from http://osherove.com/tdd-kata-1

2. Allow the Add method to handle new lines between numbers (instead of commas).• for “1\n2,3” it will return 6• make sure you only test for correct inputs. There is no need to test for invalid inputs for these katas

Original kata by Roy Osherove from http://osherove.com/tdd-kata-1

3. Allow the Add method to handle a different delimiter.• the beginning of the string can contain a separate line that looks like this“//[delimiter]\n[numbers…]”• for “//;\n1;2” it will return 3• for “//;\n1;2\n3;1” it will return 7

Original kata by Roy Osherove from http://osherove.com/tdd-kata-1

4. Delimiters can be of any length with the following format “//[delimiter]\n”.• for “//***\n1***2***3\n2***2” it will return 10

Original kata by Roy Osherove from http://osherove.com/tdd-kata-1

5. Calling Add with a negative number will throw an exception “negatives not allowed” - and the negative that was passed.• if there are multiple negatives, show all of them in the exception message

Original kata by Roy Osherove from http://osherove.com/tdd-kata-1

MOREKatas

onhttp://katas.softwarecraftsmanship.org/

Questions?

top related