TDD/Refactoring literature
While reading Desenvolvimento Agil Limpo I became interested in a deep dive in refactoring. It requires a strong knowledge about TDD.
In this note I'm trying to list some fundamental books about these topics.
online courses
- my very first contact was with ruby minitest cheatsheet
- then I went to RSpec - udemy
- and got some interesting insights from upcase's Fundamentals of TDD.
- Rails Testing Exercises (upcase): https://thoughtbot.com/upcase/rails-testing-exercises
must read
- Test-Drive Development: By Example - Kent Beck (iff: B393t / 005.14)
- Understanding the Four Rules of Simple Design - Corey Haines - link
- Clean Code - Robert Martin
- Refatoração: Aperfeiçoando o Design de Códigos Existentes - Martin Fowler
- Trabalho Eficaz com Código Legado - Michael Feathers
- eXtreme Programming Explained: Embrace Change - Kent Beck (iff: B393p / 005.1)
further reading
- Clean Craftsmanship: Disciplines, Standards, and Ethics - Robert Martin - (in the comments someone says it shows good TDD practices)
- Five Lines of Code: How and when to refactor - Christian Clausen
- Effective Software Testing: A Developer's Guide - Maricio Aniche (just because it's from Aniche)
- Beyond Legacy Code: Nine Practices to Extend the Life (and Value) of Your Software - David Scott Bernstein
- Growing Object-Oriented Software, Guided by Tests - Steve Freeman, Nat Pryce
- books from Emily Bache, about Coding Dojos / Code Katas
- https://www.manning.com/books/the-mikado-method