JavaScript minificado
O Silktide verifica se os ficheiros de script que a sua página descarrega foram minificados — reescritos para remover os espaços, comentários e nomes longos que só são relevantes para quem lê o código. Os scripts não minificados são muito maiores do que precisam de ser, tornando o carregamento da página mais lento.
A não altera o comportamento do código. Por exemplo:
// Antes da minificação: legível, mas pesado
function calculateTotalPrice(itemPrice, quantity) {
return itemPrice * quantity;
}
// Depois: comportamento idêntico, uma fração do tamanho
function c(a,b){return a*b}
Porque é importante
O é frequentemente o elemento mais pesado que uma página descarrega e, ao contrário das imagens, também tem de ser processado antes de a página se tornar totalmente interativa. Os scripts não minificados costumam diminuir para metade ou menos, e essa poupança repete-se para cada visitante, em cada visualização de página não armazenada em cache — os visitantes em telemóveis e com ligações mais lentas sentem-no mais.
Como a minificação é automática e não altera o comportamento, os scripts de produção não minificados são quase sempre uma falha de configuração: uma etapa do processo de compilação que foi ignorada ou ficheiros de desenvolvimento implementados por engano.
Como corrigir
- Ative a minificação no processo de compilação do site. Todas as ferramentas modernas de compilação incluem um minificador, normalmente ativado por predefinição nas compilações de produção.
- Se o site não tiver um processo de compilação, verifique o : a maioria tem uma definição ou um plugin que minifica os scripts automaticamente.
- Como último recurso, passe os ficheiros por um minificador autónomo antes de os carregar. Mantenha os originais legíveis — é nesses ficheiros que trabalha e publica o resultado minificado.
- Se um ficheiro identificado pertencer a terceiros, verifique se disponibilizam uma versão minificada, como a maioria faz.
Como o Silktide testa isto
- Carrega a página num navegador real, utilizando o tipo de dispositivo, a velocidade de ligação e a localização de teste configurados para os seus testes de velocidade.
- Examina cada ficheiro de script que a página descarrega e estima quanto mais pequeno seria se fosse minificado.
- Comunica cada ficheiro com uma poupança potencial significativa e classifica a página pelo total: cerca de 50 KB de poupança potencial resulta numa classificação inferior e 250 KB ou mais é classificado como fraco.
Resolução de problemas
O ficheiro já parece minificado
Os minificadores diferem no grau de agressividade, pelo que um ficheiro ligeiramente compactado ainda pode conter poupanças significativas. A verificação comunica quanto mais pequeno o ficheiro poderia ser; executá-lo através de um minificador atual normalmente capta a diferença.
Precisamos de código legível para depuração
Mantenha os ficheiros de código-fonte legíveis no seu projeto e faça a depuração com mapas de origem, que permitem às ferramentas de desenvolvimento do navegador mostrar o código original enquanto os visitantes recebem a versão minificada. Nunca precisa de disponibilizar código legível para obter uma depuração legível.