Sou uma pessoa que costuma criar variáveis e coisas do tipo com nomes enormes. Por exemplo:
int quantosDadosOUsuarioInformou = 10;
Gostaria de saber se a diferença de performance dos códigos abaixo (apenas modificado o nome das variáveis) seria muito grande, ou significativo.
int quantosDadosOUsuarioInformou = 0;
int contagemQueVaiSerFeitaPeloWhile = 0;
while(quantosDadosOUsuarioInformou < 100000000) {
quantosDadosOUsuarioInformou++;
contagemQueVaiSerFeitaPeloWhile++;
}
e
int a = 0;
int b = 0;
while(a < 100000000) {
a++;
b++;
}
Sem avaliar clareza e outras coisas, apenas performance, mudaria alguma coisa no tempo que o código levaria para ser executado completamente? O segundo código seria mais rápido?
[quote=alexcostars]Sou uma pessoa que costuma criar variáveis e coisas do tipo com nomes enormes. Por exemplo:
int quantosDadosOUsuarioInformou = 10;
Gostaria de saber se a diferença de performance dos códigos abaixo (apenas modificado o nome das variáveis) seria muito grande, ou significativo.
[/quote]
Não ha qualquer diferença porque isso não interfere em nada. Mesmo que repita para sempre.
Continue usando nomes expressivos que está bom. Nunca use nomes curtos como a , b etc… (a menos que esteja calculando uma forma conhecida como F= ma ou a = (b^2 + sqrt(4ac - a^2)) / 2a )
É que depois de compilado, os nomes de variáveis desaparecem. Isso aí vira um monte de acesso a registradores, com uma quantidade de nomes bem restrito.
No caso desses dois códigos, o assembly final será exatamente igual, já que eles fazem a mesma coisa.
Dica: só de olhar um código, é difícil dizer se ele vai ser rapidamente executado ou não (mesmo com muita experiência), a menos que esteja sendo feita alguma coisa muito absurda.
Dica: só de olhar um código, é difícil dizer se ele vai ser rapidamente executado ou não (mesmo com muita experiência), a menos que esteja sendo feita alguma coisa muito absurda. [/quote]
Uma época acompanhei esse site, mas achei que eles pecaram em não ser mais criteriosos. Alguns artigos aí só falam bobagem, como “a importância de usar final”.
Então, é uma boa procurar também fontes confiáveis de informação, como os artigos do Goetz:
E o trabalho do seu cerebro ?
Se as variáveis tem nomes coerentes como o que representam é muito mais facil entender o codigo. Os olhos são muito rápidos e na maioria das vezes vc lê por comparação de padrãoes e não por juntar letra a letra. Ou seja, é tudo muito mais rápido quando usa variáveis com nomes coerentes. Independentemente do tamanho.
Em códigos compilados não faz diferença, mas em códigos interpretados pode fazer.
Uma diferença significativa é com aplicações web pesadas, com muito código em JavaScript e CSS (veja o código do Google Maps).
A velocidade de início da aplicação depende de você primeiro baixar a aplicação para o teu navegador, e então rodar ela. Arquivos menores são baixados em menos tempo que os maiores, então os otimizadores de código minificam ele, tornando-o menor.
Sim. No caso do Java (pergunta do autor do tópico), não faz diferença.
Para java script, com certeza. Mas muitas vezes o problema não está no parser, e sim no fato de se ter que fazer download do script. E scripts grandes tem mais kb do que scripts pequenos. Com ofuscadores, pode-se reduzir muito o tamanho final do arquivo.