何これ?
本来UITableViewControllerでUITableViewDataSourceとUITableViewDelegateを実装する必要はない。その辺りの処理を別のクラス分けたほうが、本来行いたい処理に集中できる。そこで作ったのがこのTableViewAgentである。
cocoapodsでinstallできます。
pod 'TableViewAgent', :podspec => 'https://raw.github.com/akuraru/TableViewAgent/master/TableViewAgent.podspec'
作りかけなので、頻繁に破壊的な変更があるのでご注意ください。
使い方はgithubのサンプルを読むと良い。
設計方針
できることは限られているが手軽に扱えるようにする。複雑なものは考えない。
TableViewに表示したいデータが配列でしたあとで、通常UITableViewでやりたいことは限られいる。それは主に3つである。
・CellのIdentifierをが何か
・Cellを選択した場合の挙動
・Cell削除した場合の挙動
これらのみをViewControllerのdelegateで実装したい。これ以外のことはすべて外部のクラス(ここではTableViewAgent)で記述できるし、たいてい汎用的になるはずである。それ以外のことについては、通常では扱うことのない複雑ものであるとしている。