ViewController è, come suggerisce il nome, un singolo oggetto che fornisce sia una vista che un controller. Dal momento che le app mobili tendono ad avere modelli di interazione molto più stretti rispetto alle applicazioni desktop o web, solitamente c'è un accoppiamento 1: 1 tra le viste e i controller e, in quanto tale, non è un motivo per separarli.
Se hai un caso per più viste che condividono un singolo controller, dovresti comunque tenere il controller separato, ma altrimenti va bene avere singoli oggetti che forniscono entrambi i ruoli in MVC.