> That would leave it up to the controller to make the table view.

Sounds good. Encouraging this behavior is a positive :) There's already so much abuse of creating views in controller init methods that I want to avoid adding to that fire.

>  I might also think that you'd want to set the table view after the initial allocation, so that you could create the NITableViewSystem in init, but not create the UITableView until viewDidLoad. 

This sounds perfect.

> So would you suggest changing the factory method to be something like [NITableViewSystem tableSystemWithTableView:delegate:delegate:

I imagine that we wouldn't want to include the tableView argument, opting to instead require that the dev set the table view once it's created in viewDidLoad.