title: Swift: model structs, using optionals vs initialization of empty values
body: <p>In <code>Swift</code>, say for example I have a <code>struct</code> for this <code>model</code>:</p>
  
  <pre><code>struct Message {
      var message: String = ""
      var timestamp: String = ""
      var id: String = ""
  }
  </code></pre>
  
  <p>And I would be instantiating multiple <code>Messages</code> using this <code>struct</code> from a database, and then populate a <code>TableView</code> with them.</p>
  
  <p>Would it be best practice to using optionals instead of setting these variables with empty strings like such?</p>
  
  <pre><code>struct Message {
      var message: String?
      var timestamp: String?
      var id: String?
  }
  </code></pre>
  
  <p><strong>Would it be more efficient to basically setting the variables to <code>nil</code> vs an <code>empty string</code>? Does <code>nil</code> take less memory vs <code>empty string</code>?</strong></p>