UITableVeiwのDataSourceとDelegate

皆さん、UITableViewのDelegate と DataSource ってどこに書かれてますか?
ViewController と別クラスとして実装されてる方もいらっしゃるとは思いますが
Delegate と DataSource を別々にされている方はあまりいないのではないでしょうか。

今回、2画面で同じテーブルビューを表示していて
DataSource だけ共通のものを使いたかったので DataSourceだけ
外出しして別クラスにしたんですが、そこでハマっていまいました。

セルの高さを変更するメソッド

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath

これって、ずっとDataSourceだと思ってたのですが Delegate なんですね。。。
知らなかった。。。

ヘッダービューの変更とかもそうですね。

- (UIView*)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section

2時間も無駄にしてしまった。。。