Question: could you explain what the difference is between delegate and kvo?
Answer: KVO should be used to observe changes in property for an object. Delegates should be used when there are lots of callbacks and only one object is desired to be notified. Delegates are objects that acts as another program when an event fires.