--- title: Refactoring Legacy Code katas --- ###### tags: `refactoring` `kata` Pietro Di Bello, [28 Sep 2020 at 22:59:43]: > voi cosa consigliereste come kata per aiutare un team a fare pratica con il refactoring (abituarsi a cercare di esprimere il codice in modo più chiaro e parlante partendo da una codebase piuttosto "offuscata") ? a me vengono in mente tennis kata (un po' noioso forse), gilded rose? ugly trivia? o anche il mitico goose game refactoring kata? * [GildedRose](https://github.com/emilybache/GildedRose-Refactoring-Kata) - basic - "Lift Up Conditionals": https://www.youtube.com/watch?v=zyM2Ep28ED8 * [Racing Car Katas](https://github.com/emilybache/Racing-Car-Katas) - basic - find the SOLID violations - refactoring * Il [TripService](https://github.com/sandromancuso/trip-service-kata) non è male. * https://github.com/supernelis/workshop-renovating-legacy-codebase qui c'e' una guida quasi passo passo su come testarlo. poi ho un fork di quello di JB con approvals e pittest gia' configurato - seam model - advanced - in ... usavamo `TripService`, `GildedRose` e `UglyTrivia` (gli ultimi due utilizzando "Approval Tests") * Il [Birthday Greeting Kata](https://github.com/xpmatteo/birthday-greetings-kata) di Matteo Vaccari - advanced * https://github.com/sf105/refactoring-golf * https://github.com/xpepper/fifty-shades-of-legacy-goose-game/tree/master/goose-game-two * https://understandlegacycode.com/blog/5-coding-exercises-to-practice-refactoring-legacy-code/ * https://philippe.bourgau.net/make-testing-legacy-code-viral-mikado-method-and-test-data-builders/