I have seen apps implementing this interface everywhere. In many cases, we could use the new property syntax like
public int Foo { get; set; }
which I like very much. However, in order to implement this interface, this one has to turn into 10 lines or so. This makes the code very cluttered, and I'm not sure if it also hurts performance.
Can someone explain when this interface is really necessary?