Все весьма просто, хотя, и немного непонятно по началу как вы уже заметили.
MVC, который крутится вокруг объектной модели, построен на так называемых делегатах. Это такие интерфейсы которые помогают кидать данные куда надо и при том сохранять инкапсуляцию.
В общем методы которые вы имплементируете вызываются UITableView после отрисовки. Таблица для начала спрашивает своего делегата по "ДатаСурсу" - "а сколько, собственно, мне нарисовать ячеек?". А потом - "а какие, собственно, ячейки рисовать?". Ну и т.д.
С помощью делегатов одни объекты могут попросить другие объекты сделать что-то за них (делегировать). Так они защищаются от лишних лап внутри их самих. Это одна из причин по которой Objective-C называют "самым идеологически правильным ООЯП".
Надеюсь не запутал больше ;) Удачи вам в изучении!