title: UIViewController - View events life cycle and registering for KVO / Notifications
body: <p>I'm wondering if there's any way <code>-viewWillAppear:</code> would be called without a matching <code>-viewDidAppear:</code>. Ditto for <code>-viewWillDisappear</code> and <code>-viewDidDisappear</code>.</p>
  
  <p>The root of my question is where to register and unregister for KVO and / or NSNotifications of an object who's change notifications will cause the view controller to update views.</p>
  
  <p>For example, I have a model object that is being processed asynchronously and it's string properties could change. I'd like the view controller to KVO those properties and have any changes reflected by swapping out the text of a label managed by said view controller.</p>
  
  <p><em>Where do you register and unregister for notifications and why?</em></p>
  
  <p><strong>EDIT:</strong></p>
  
  <p>A gotcha I've come across is what to do in cases of application state change (e.g. <code>-applicationWillResignActive</code>, <code>-...didEnterBackground</code>, etc). These changes don't seem to trigger view controller lifecycle methods. Any best practices here?</p>