Martin Fowler's Refactorings

This diagram represents the Bad Smells which can occur in object-oriented code. Those are the grey items on the left.

And the lines link the smells to recommended refactorings, like the blue "Extract Method" item. So the point of this graphic is to give you some hints about how to improve your code.


  1. Move the mouse on to one of the grey items (what Martin calls "Bad Smells"). Icons will appear.
  2. Click on the top left icon to show ONLY the (differently coloured) refactoring items which explain what to do to relieve the smell.
  3. Move the mouse on to one of the refactorings and click it. You see a short description of that refactoring at the bottom of this page.
  4. Or click on the arrow icon to open a longer description on Martin's own website. (This is shown in a new browser window or tag.)
  5. When you click on a refactoring, you see which smells it can fix. And its description appears in a light blue panel at the bottom of the screen.
  6. To show all the items again, either click on the button "Show All" or on any item's 2nd icon .
This is a canvas


Thanks to Martin for allowing me to present this information.