It is now time for me to turn the tables on you, to present you with some homework. If you take a trip to my Github account, you will find the following lovingly crafted repo.
In it, you will find some yucky code. It's not terrible code - in fact, it's pretty average code from my experience - but it does have some issues.
Your task is the following:
- Look at the code and figure out what issues there are. I suggest writing them down.
- Refactor the code into something that is testable, which is to be proven in the obvious way.
While you do this, I recommend that you try to a) do as much of it using refactoring support (either built into VS or using Resharper), and b) do as much of it with keyboard shortcuts as possible.
In each of the next few posts, I'll pick a specific issue that I see and take the code through a transformation to make it better.