title: CoreData with Swift and iOS 8+ still needs willAccessValueForKey()?
body: <p>I'm writing a function in my NSManagedObject subclass called <strong>Friend</strong>.</p>
  
  <p>I wonder if I should write this (user is another NSManagedObject <strong>User</strong>):</p>
  
  <pre><code>  func firstCharacterOfComputerDisplayName() -&gt; String
    {
      guard let user = self.friend else {
        return ""
      }
      return user.firstCharacterOfComputerDisplayName()
    }
  </code></pre>
  
  <p>or that:</p>
  
  <pre><code>  func firstCharacterOfComputerDisplayName() -&gt; String
    {
      self.willAccessValue(forKey: "friend")
  
      guard let user = self.primitiveValueForKey("friend") as? User else {
        self.didAccessValue(forKey: "friend")
        return ""
      }
      let dispName = user.firstCharacterOfComputerDisplayName()
      self.didAccessValue(forKey: "friend")
      return dispName
    }
  </code></pre>