À medida que o projeto cresce, a velocidade de compilação do projeto diminui. Isso se torna especialmente visível quando você testa o programa, enquanto faz pequenas alterações no programa em paralelo.
Primeiro, vamos descobrir quanto tempo o projeto é compilado para nossas melhorias. Para fazer isso, entre no terminal
defaults write com.apple.dt.Xcode ShowBuildOperationDuration -bool YES
Para fazer isso, vá para a seção Produto, mantenha pressionada a tecla alt e clique em Limpar pasta de compilação e, em seguida, remonte o projeto. Meu projeto é compilado por
81 segundos . Vamos ver qual será o resultado após a melhoria.

Primeiro de tudo, devemos descobrir quais locais atrasam a compilação. Por padrão, o Xcode não mostra um aviso onde está o problema, mas podemos corrigi-lo.
Os lugares mais difíceis são ótimos recursos e verificação de tipo. Portanto, precisamos inserir essas duas linhas na seção Configurações de compilação -> Outros sinalizadores rápidos -> Depurar
-Xfrontend -warn-long-function-bodies=100 -Xfrontend -warn-long-expression-type-checking=100
(aqui temos tempo de compilação de 100 ms, podemos colocar qualquer número)
Um exemplo do meu rascunho de trabalho

Eu tenho uma seção que leva 13778 ms, provavelmente você não terá isso, mas devido às especificidades do projeto, eu tenho essas seções. Desde que é construída uma árvore binária para OCR.
Devido ao aninhamento profundo entre si e à definição de tipo apenas no início, antes do sinal de igual, o compilador precisa de muito tempo para entender qual tipo está à sua frente. (A árvore tem 30 linhas, aqui faz parte dela)
Para
Depois
Determinamos o tipo de cada aninhamento e o aviso foi embora.
Outro ponto fraco são vários curtos-circuitos seguidos.
Para
DepoisTipo explicitamente especificado

Depois de corrigir todos os avisos, verificaremos o tempo de construção do projeto novamente.
Agora o projeto compila
26 segundos duas vezes e meia mais rápido.

Ainda há trabalho a ser feito, mas os problemas mais óbvios foram corrigidos.