Bartosz Goralewicz fez uma pergunta interessante a Martin Splitt, do Google. Ele perguntou se deveríamos dividir os arquivos CSS e JavaScript em pequenos pedaços de arquivos ou não. A resposta de Martin é longa, mas, em suma, depende. 🙂
Parece que o uso de pedaços menores pode ajudar um pouco com problemas de depuração e também com o cache do Google, mas pode causar outros problemas. Portanto, se você fizer isso, faça seus pedaços razoáveis e não exagere. Bartosz resumiu no Twitter dizendo “É bom ter partes * razoáveis *, mas também – não enlouqueça ao implantar alterações a cada poucas horas para todos os arquivos. É melhor implantar apenas alterações em um único arquivo que * precisa * em vez de alterar as versões apenas para fins de implantação? “
Aqui está a pergunta:
2/2 … mais difícil para o Google processar um script pesado, pois cria um cenário 0/1 quando você renderiza / indexa tudo ou ignora completamente. Pergunta 1: está correto 2? Vocês têm heurísticas / opções para parcialmente script / renderizar um arquivo JS (assumiríamos que não é possível)?
– Bartosz Góralewicz (@bart_goralewicz) 16 de junho de 2020
Aqui está sua resposta em sete partes:
O cenário “pular” não é o principal culpado, mas você está próximo. Há duas preocupações em renderizar um único pacote grande:
– erros de análise ou execução não recuperáveis
– armazenamento em cache1 /?
– Martin Splitt em 🏡🇨🇭 (@ g33konaut) 17 de junho de 2020
3 /? Existem certos erros que podem interromper a análise. Nesse caso, o arquivo JS inteiro pode ser impossível de executar. Isso é ruim se for 100% CSR.
Durante a execução, certos erros também podem ser evitados por completo e você está em um lugar ruim novamente.
– Martin Splitt em 🏡🇨🇭 (@ g33konaut) 17 de junho de 2020
5 /? Para ser sincero, acho que é mais um cenário hipotético do que uma questão do mundo real. Mas o cache é uma preocupação real que vejo na natureza. Armazenamos em cache de forma agressiva e algumas pessoas implementam alterações com frequência. Isso pode ser de duas maneiras.
– Martin Splitt em 🏡🇨🇭 (@ g33konaut) 17 de junho de 2020
7 /? Mas se o pacote estiver dividido * razoavelmente * em partes menores, essa invalidação poderá ser mais refinada (junto com partes), o que é ótimo para os usuários, assim como para nós.
– Martin Splitt em 🏡🇨🇭 (@ g33konaut) 17 de junho de 2020
Mas aqui está um pouco mais:
Eu não faria. Eu manteria os arquivos antigos por um tempo, se eu quisesse estar do lado seguro.
– Martin Splitt em 🏡🇨🇭 (@ g33konaut) 17 de junho de 2020
Discussão no fórum no Twitter.