Sempre escrevi programas ASP casualmente, sem muita consideração pela eficiência operacional. ASP é bastante tolerante à sintaxe e tem alta tolerância a falhas. Ele pode ser usado diretamente sem definir variáveis. Os nomes de arquivos ASP não precisam distinguir entre letras maiúsculas e minúsculas. JSP Portanto, dentre as diversas linguagens com as quais tive contato, o asp é a menos rígida e a que apresenta menores exigências para programadores.
Ontem testei a comparação de velocidade de execução do asp.net, php e asp. Hoje tive a vontade de ver quanto impacto as variáveis definidas e indefinidas têm na eficiência de execução do asp. do que variáveis indefinidas são duas vezes mais rápidas!
O programa de teste ainda é o mesmo de ontem, executando o loop for 10 milhões de vezes para obter o tempo de execução.
1. O programa não define variáveis (dim i)
Copie o código do código da seguinte forma:
<%
horário de início escuro
horário de início=temporizador()
para i = 1 a 10000000
próximo
horário de fim escuro
hora final=temporizador()
tempo de execução da página de resposta.Write: & FormatNumber((endtime-startime)*1000,3) & milissegundos
%>
2. O programa define variáveis (dim i)
Copie o código do código da seguinte forma:
<%
escurecer eu
horário de início escuro
horário de início=temporizador()
para i = 1 a 10000000
próximo
horário de fim escuro
hora final=temporizador()
tempo de execução da página de resposta.Write: & FormatNumber((endtime-startime)*1000,3) & milissegundos
%>
Cada programa é executado 5 vezes (exceto a primeira execução) e então o valor médio é obtido. A seguir estão os resultados do teste:
Definir variáveis | Tempo de execução | tempo médio | ||||
não | 1890ms | 1859ms | 1844ms | 1875ms | 1859ms | 1865ms |
sim | 890ms | 890ms | 984ms | 875ms | 890ms | 905ms |
A partir dos resultados do teste acima, pode-se observar que a velocidade de execução do asp é duas vezes mais rápida ao definir variáveis do que ao não definir variáveis.
Quanto ao motivo pelo qual isso acontece, não estudei mais a fundo. No entanto, através deste exemplo, sinto realmente que a programação padronizada pode fazer com que o programa funcione de forma mais eficiente. Para programação não padrão, embora a linguagem em si seja tolerante a falhas, o processo de análise leva tempo. É claro que, para um programa simples, a diferença de tempo entre padronização e não padronização pode ser mínima, mas se o sistema que você desenvolve for relativamente grande, com muitas páginas e chamadas de função, então a diferença entre padronização e não padronização será insignificante. A diferença no consumo de tempo será destacada, variando de 1 ou 2 vezes a dezenas de vezes.