Piccolo coding dojo (milano xpug 2013-04-11)
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

Piccolo coding dojo (milano xpug 2013-04-11)

  • 560 views
Uploaded on

Introduzione al TDD.

Introduzione al TDD.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
560
On Slideshare
560
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
0
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Piccolo Coding Dojo XPUG Milano 10 aprile 2013 Andrea Francia http://andreafrancia.itThursday, April 11, 13
  • 2. Timetable • A short review of TDD (1pom) • Practice with TDD (2pom) • Retrospective (1pom)Thursday, April 11, 13
  • 3. Test Driven DevelopmentThursday, April 11, 13
  • 4. The heart of TDD 1. write a test 2. watch it fail 3. make it pass 4. repeatThursday, April 11, 13
  • 5. Example: calculatorThursday, April 11, 13
  • 6. Thursday, April 11, 13
  • 7. Thursday, April 11, 13
  • 8. Thursday, April 11, 13
  • 9. Thursday, April 11, 13
  • 10. Thursday, April 11, 13
  • 11. Thursday, April 11, 13
  • 12. Thursday, April 11, 13
  • 13. Thursday, April 11, 13
  • 14. Thursday, April 11, 13
  • 15. Example: file name extensionThursday, April 11, 13
  • 16. Thursday, April 11, 13
  • 17. Thursday, April 11, 13
  • 18. Thursday, April 11, 13
  • 19. Thursday, April 11, 13
  • 20. Three Rules of TDD 1. You can’t write any production code unless is to make green a red test 2. You can’t add more code to a test than is sufficient to make it red 3. You can’t write more production code than is sufficient to make the test green http://butunclebob.com/ArticleS.UncleBob.TheThreeRulesOfTddThursday, April 11, 13
  • 21. Refactoring (def ): improving design without changing its observable behavior.Thursday, April 11, 13
  • 22. Refactoring (when) make it pass write • another the Green During test refactorThursday, April 11, 13
  • 23. Simple Design A design is simple when: 1. pass all tests 2. contains no duplication 3. express the intent 4. minimal, nothing superfluous http://c2.com/cgi/wiki?XpSimplicityRulesThursday, April 11, 13
  • 24. What is not unit test? A test is not a unit test if: 1. It talks to a database. 2. It communicates across a network. 3. It touches the file system. 4. Requires some manual set-up Working Effectively with Legacy Code - Michael FeathersThursday, April 11, 13
  • 25. Thursday, April 11, 13
  • 26. GrazieThursday, April 11, 13
  • 27. Domande?Thursday, April 11, 13
  • 28. Game of LifeThursday, April 11, 13
  • 29. THE GAME OF LIFE IS A TWO DIMENSIONAL GRID OF SQUARE CELLS EACH OF WHICH IS IN ONE OF TWO POSSIBLE STATES ALIVE OR DEAD http://www.slideshare.net/gabriele.lana/coderetreatThursday, April 11, 13
  • 30. AT EACH STEP IN TIME EVERY CELL INTERACTS WITH ITS 8 NEIGHBORS FOLLOWING 3 RULES http://www.slideshare.net/gabriele.lana/coderetreatThursday, April 11, 13
  • 31. 1. ANY LIVE CELL WITH FEWER THAN 2 LIVE NEIGHBORS DIES OF LONELINESS http://www.slideshare.net/gabriele.lana/coderetreatThursday, April 11, 13
  • 32. 2. ANY LIVE CELL WITH MORE THAN 3 LIVE NEIGHBORS DIES OF OVERCROWDING http://www.slideshare.net/gabriele.lana/coderetreatThursday, April 11, 13
  • 33. 3. ANY DEAD CELL WITH EXACTLY 3 LIVE NEIGHBORS COMES TO LIFE OF WARMTH http://www.slideshare.net/gabriele.lana/coderetreatThursday, April 11, 13
  • 34. LIFE EVOLUTION 1 2 3 http://www.slideshare.net/gabriele.lana/coderetreatThursday, April 11, 13
  • 35. LIFE EVOLUTION 1 2 3 http://www.slideshare.net/gabriele.lana/coderetreatThursday, April 11, 13
  • 36. LIFE EVOLUTION 1 2 3 http://www.slideshare.net/gabriele.lana/coderetreatThursday, April 11, 13