title: Should I use set once variables?
body: <p>Does this smell?<br>
  I have a few properties you can only set once. They can be set at any time during the objects existence and can not be undone.<br>
  I implement then like this.</p>
  
  <pre><code>    private FooThingy _foo;
      public FooThingy Foo
      {
          set { if (null == _foo) _foo = value; }
          get { return _foo; }
      }
  </code></pre>
  
  <p>But I don't like it. I feel like I have missed something. Have I?</p>
  
  <p><strong>Edit</strong>: Why I don't have it in the constructor.
  <br>I cant go into the details but setting this results in <strong><code>&lt;</code>bad analogy<code>&gt;</code></strong> Melting the wax statue <strong><code>&lt;</code>/bad analogy<code>&gt;</code></strong>. And I don't want my constructor to create already melted objects. </p>