Skip to content

Kata to practice Polymorphism and Baby Steps.

License

Notifications You must be signed in to change notification settings

codecop/Parrot-Refactoring-Kata

This branch is 7 commits behind emilybache/Parrot-Refactoring-Kata:main.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

5f66746 · Dec 12, 2024
May 25, 2023
Dec 25, 2021
May 31, 2024
Jun 6, 2023
Dec 4, 2018
Oct 4, 2019
Mar 20, 2024
Dec 11, 2024
May 11, 2024
Dec 17, 2017
May 11, 2024
Dec 21, 2017
Oct 21, 2017
Dec 10, 2024
Dec 4, 2018
Mar 13, 2024
Nov 4, 2017
Dec 19, 2023
Feb 15, 2021
Dec 4, 2018
Oct 13, 2024
Dec 18, 2023
Dec 11, 2021
Oct 23, 2023
Aug 7, 2023
Dec 10, 2024
Aug 28, 2024
Jul 7, 2015

Repository files navigation

Support this and all my katas via Patreon

Parrot Refactoring Kata

Can you spot any code smells in this code? I'll give you a clue - a spot of Pol(l)ymorphism should improve matters!

Refactor this code, take small steps, run the tests often. See how small and beautiful and polymorphic you can make it.

I made a video explaining this kata, and videos with worked solutions:

There is also a Guided Learning Hour using this exercise: Everyday Design Improvements in OO Code

Acknowlegements

This code is heavily inspired by one of the examples in Martin Fowler's book "Refactoring". It's a classic, and if it's not on your bookshelf already I suggest you treat yourself to a copy!

Languages

  • XSLT 13.8%
  • C++ 8.5%
  • Pascal 7.2%
  • TypeScript 6.0%
  • Ada 5.3%
  • C 4.9%
  • Other 54.3%