Jak zarządzać 2 widokami tabeli w 1 viewControllerze?

Czy ktoś zna prosty sposób na zarządzanie kilkoma tableViews w jednym viewControllerze? Oto jak do tej pory to robiłem:

-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView 
{
if(tableView == self.tableView1) 
return 1;
else if(tableView == self.tableView2) 
return 2;
}

-(NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
{
if(tableView == self.tableView1) 
return @"bla";
else if(tableView == self.tableView2) 
return @"blabla";
}

-(NSString *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
if(tableView == self.tableView1) 
...
else if(tableView == self.tableView2) 
...
}

Uważam za bardzo denerwujące, że muszę użyć instrukcji if / else dla KAŻDEJ POJEDYNCZEJ metody delegowania. Plus, naprawdę trudno jest odczytać, gdy istnieje wiele tableViews. Poza tym mam ten sam problem z NSURLConnection, itd. Gdy tylko mam kilka obiektów, które odpowiadają na ten sam protokół delegata, wszystko staje się chaotyczne.

Jaki jest najlepszy sposób na uproszczenie? Dzięki

questionAnswers(2)

yourAnswerToTheQuestion