title: Why does Realm use try! in Swift?
body: <p>Why Does Realm use <code>try!</code> so frequently? It seems like if you're certain your call won't fail then you should not design it to <code>throw</code> - no?</p>
  
  <p>Here is an example, from the Swift page on realm.io:</p>
  
  <pre><code>// Get the default Realm
  let realm = try! Realm()
  </code></pre>
  
  <p>or </p>
  
  <pre><code>// Persist your data easily
  try! realm.write {
    realm.add(myDog)
  }
  </code></pre>
  
  <p>To me this implies they will never fail so why have the constructor or write() throw?</p>