title: Private 'set' in C# - having trouble wrapping my brain around it
body: <p>I've seen a lot of example code written using something like (please forgive how horribly canned this is):</p>
  
  <pre><code>public class Test
  {
     public object Thingy { get; private set; }
  }
  </code></pre>
  
  <p>Unfortunately, these kinds of examples never really explain why 'set' is set as private.  So, I'm just wondering if there's a good, common example that will illustrate to me why something like this would be used.  </p>
  
  <p>I sort of see it - the property can be run to process some extra logic in addition to setting that field.  I'm just confused on how it would be invoked, and why this approach would be used rather than a generic setter method.</p>