Report question

Question: when to use "willChangeValueForKey" and "didChangeValueForKey"?