Eu tive que desembaraçar código em controladores de tamanho grande antes e isso realmente impediu minha capacidade de navegar no conteúdo primeiro. Uma coisa importante que percebi é que apenas o tamanho do View Controller não era motivo suficiente para separar as coisas. Existe complexidade em ter 1 arquivo grande e também complexidade em ter um monte de arquivos pequenos. Aqui estão alguns motivos válidos para refatorar a quebra de um View Controller em partes menores:
MVC
O View Controller não deve fazer muito mais do que ser a cola de conexão entre o View e o Model. Se você tiver muitos códigos de conexão de rede, códigos de manipulação de imagens, etc., considere dividi-los em classes auxiliares.
Vários controles com o View Controller como fonte de dados
Se houver vários controles na tela que tenham o seu View Controller como fonte de dados, considere dividi-los em objetos de fonte de dados separados e faça com que eles sejam a fonte de dados. Ou você também pode dividi-los em View Controllers separados (como se o View Controller tivesse uma exibição de tabela além de outro controlador, você pode quebrá-lo em sua própria classe Table View Controller).
Código duplicado
Se você tiver exatamente o mesmo código em diferentes Controladores de exibição, coloque-o em um local compartilhado. Isso tornará seu código reutilizável e ajudará a gerenciar a complexidade.
Aqui estão alguns conselhos adicionais para minimizar a complexidade do View Controller:
Storyboard em vez de programático
Criar elementos de exibição é muito código e o código da geometria do quadro também é muito trabalhoso. Caso ainda não considere usar restrições de layout automático e colocar o máximo possível dos elementos Exibir no storyboard.
Código / comentários desnecessários
Certifique-se também de remover códigos / comentários desnecessários. Muitas vezes, um novo arquivo do View Controller vem com métodos que você não está usando. Se você não estiver usando um método como didReceiveMemoryWarning
esse, é seguro removê-lo. Além disso, como o arquivo do View Controller é muito grande, às vezes é assustador remover o código ou os comentários antigos. Não adie isso! Isso apenas aumenta a complexidade.
Notificações
Para responder à sua pergunta sobre notificações: As notificações não são um Martelo de Ouro para usar com tudo. Considero as notificações úteis quando vários controladores de exibição precisam atualizar ao mesmo tempo devido a uma ação específica. Tenha cuidado com as notificações, porém, o uso excessivo delas pode causar muita dor ao tentar localizá-las.