Beginning C# object-oriented programming - Clark, Dan, (The expert's voice in C#, 2011)