Stumbled upon this article written by no other than Eric Lippert listing the top 10 design faults of C# language. Here is the summary,  the source to the full article is at the bottom.  #10: The empty statement does nothing for me Reflects on the fact that lone “;” is a legal statement #9: Too much equality There are too many ways check for equality: ==, Equals, ReferenceEquals, CompareTo(…). From personal experience… Read More

The purpose of the adapter pattern is actually quite simple. It converts one interface to another one, thus making it possible for classes to work together where the interfaces are different. Real World Example Because it’s such a common pattern I had to think for a while before coming up with an example. Say, our application has to export some data in various formats – excel, pdf etc. It would be quite… Read More