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

 
 

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%