Diferença entre tempo de execução e tempo de compilação

A operação interna de um computador permanece um mistério para o usuário médio, que depende do trabalho dos programadores para informar ao computador o que fazer. O programador deve entender como o computador espera receber instruções e os dois estágios de execução do programa, tempo de compilação e tempo de execução, além de outros conceitos.

Tempo de compilação

O primeiro estágio na execução de um programa, o tempo de compilação, envolve a tradução de uma linguagem que os humanos entendem, ou código-fonte, para a linguagem que os computadores entendem ou código de máquina. O código-fonte contém palavras que você reconhece, números em formato decimal e agrupamentos organizacionais que facilitam a compreensão do fluxo de instruções. O estágio do tempo de compilação termina quando o novo programa é um arquivo executável.

Tempo de execução

O computador usa as instruções que o tempo de compilação produz para executar o programa. Durante o tempo de execução, o computador lê a tradução do código-fonte para executar as tarefas que o programador incorporou ao código. Toda vez que alguém executa o programa, isso é feito em tempo de execução.

Diferença

O tempo de compilação é realizado apenas uma vez, convertendo o código fonte em um arquivo executável. O último pode iniciar o tempo de execução qualquer número de vezes sem precisar revisitar o tempo de compilação, a menos que o programa exija alterações. A maioria dos usuários do programa experimenta apenas tempo de execução.

Erros de tempo de compilação

Erros podem ocorrer durante os dois estágios da execução do programa. Erros de tempo de compilação, ou erros de sintaxe, existem no código-fonte. Os exemplos incluem comandos com erros ortográficos, ordem incorreta das operações, variáveis ​​com tipos incompatíveis e omissão dos elementos necessários. Um programador pode detectar erros em tempo de compilação com muita facilidade porque eles são sintáticos e não lógicos. O compilador geralmente indica um erro em tempo de compilação e explica ou fornece dicas sobre como corrigi-lo. Se o compilador gerar com êxito um arquivo executável a partir do seu código-fonte, isso significa que o seu programa não contém erros no momento da compilação.

Erros catastróficos em tempo de execução

Erros de tempo de execução ocorrem enquanto um programa está em execução. Erros de tempo de execução catastróficos fazem com que um programa trave e pare de executar prematuramente. Exemplos incluem acesso restrito à memória e divisão por zero. A instrução x / y está sintaticamente correta, mas se ‘y’ contiver o valor 0 em tempo de execução, o programa será interrompido. Um programador pode achar difícil detectar erros catastróficos em tempo de execução porque eles geralmente ocorrem apenas sob certas condições.

Erros lógicos em tempo de execução

Um erro lógico não causa uma falha no programa, mas faz com que seja executado de uma maneira que o programador não esperava. Considere um programa com um menu de opções em que você espera que o usuário insira o número da opção desejada. Se o usuário escreve uma letra, o programa, aguardando um número, converte-o em um valor numérico e envia o usuário para uma das opções de menu. O programa é executado como se nada estivesse errado em vez de informar ao usuário que escreveu uma opção inválida.

Referências

     

    Você pode estar interessado:

    Deixe um comentário