I am looking for code samples that are good examples of how to refactor code. I would be the happiest if you could provide the code both before and after the refactorings. I am interested in any language, but Java and Python is preferred.
Why? I am planning to make a meetup on the topic and I would need a good base for it.
(I know that there are a lot of stuff out there like refactoring.guru, etc, but I am interested in real-life code samples! :) Also, I have a big bunch of code from our codebase, but I hope you might have even more interesting samples! )
Any help is appreciated! :)
Top comments (8)
I just wrote a post on refactoring some Go code to use interfaces. I outline the steps used to refactor this particular pattern: dev.to/chuck_ha/interfaces-in-go-3onc
I would also suggest reading sandimetz.com/99bottles/. It's a fantastic book that refactors code throughout the book and explains how to get there.
This kata is a famous one :
github.com/emilybache/GildedRose-R...
Also, you can take a look at this one :
github.com/sandromancuso/trip-serv...
Java one is also explained in two blog articles here :
codurance.com/2011/07/16/testing-l...
is it about safe refactoring (with ide)
or refactoring to design patterns? if its the latter, I recommend going through Clean Code by Rob Martin and
Refactoring: Improving the Design of Existing Code by Kent Beck and Martin Fowler
Someone at work asked me to refactor their 99 bottles code. I recorded the refactoring so they could see the process and how I think about it. Before is here and after is here. It's a pretty good demonstration of how I refactor.
(C#) I just made one that I found in StackOverflow. I implemented the code in a WebApi and it is working fine :D
stackoverflow.com/questions/333111...
Here's some C# refactoring exercise
c-sharpcorner.com/Forums/refactori...
@gonedark has a few awesome posts. here's one:
A month of clean code
Jason McCreary