Diferença entre o programa fonte e o programa objeto

Índice:

Diferença entre o programa fonte e o programa objeto
Diferença entre o programa fonte e o programa objeto

Vídeo: Diferença entre o programa fonte e o programa objeto

Vídeo: Diferença entre o programa fonte e o programa objeto
Vídeo: Dicas de Informática: Programa Fonte X Programa Objeto 2024, Julho
Anonim

A principal diferença entre o Programa Fonte e o Programa Objeto é que o Programa Fonte é um programa legível por humanos escrito por um programador enquanto o Programa Objeto é um programa executável por máquina criado pela compilação de um programa fonte.

Os programas de origem podem ser compilados ou interpretados para execução. Os descompiladores ajudam a converter programas de objeto de volta para seus programas de origem originais. É importante notar que os termos programa fonte e programa objeto são usados como termos relativos. Se você pegar um programa de transformação de programa (como um compilador), o que entra é um programa fonte e o que sai é um programa objeto. Portanto, um programa objeto produzido por uma ferramenta pode se tornar um arquivo fonte para outra ferramenta.

O que é Programa Fonte?

O programador escreve o programa fonte usando uma linguagem de alto nível. Portanto, é facilmente legível pelos humanos. Os programas de origem geralmente contêm nomes de variáveis significativos e comentários úteis para torná-los mais legíveis. Uma máquina não pode executar diretamente um programa fonte. Um compilador ajuda a transformar o programa fonte em código executável para ser executado pela máquina. Alternativamente, é usar um intérprete. Ele executa um programa fonte linha por linha sem pré-compilação.

Diferença entre o programa fonte e o programa objeto
Diferença entre o programa fonte e o programa objeto
Diferença entre o programa fonte e o programa objeto
Diferença entre o programa fonte e o programa objeto

Figura 01: Um Programa Fonte

Visual Basic é um exemplo de linguagem compilada, enquanto Java é um exemplo de linguagem interpretada. Os arquivos de origem do Visual Basic (arquivos.vb) são compilados para código.exe, enquanto os arquivos de origem Java (arquivos.java) são compilados primeiro (usando o comando javac) para bytecode (um código de objeto contido em arquivos.class) e depois interpretados usando o interpretador java (usando o comando java). Quando os aplicativos de software são distribuídos, normalmente eles não incluem arquivos de origem. No entanto, se o aplicativo for de código aberto, o código-fonte também será distribuído e o usuário poderá ver e modificar o código-fonte também.

O que é Programa de Objetos?

Programa objeto geralmente é um arquivo executável por máquina, que é o resultado da compilação de um arquivo fonte usando um compilador. Além das instruções da máquina, elas podem incluir informações de depuração, símbolos, informações de pilha, realocação e informações de perfil. Uma vez que contêm instruções em código de máquina, não são facilmente legíveis por humanos. Mas às vezes, os programas objeto referem-se a um objeto intermediário entre os arquivos fonte e executáveis.

Ferramentas conhecidas como linkers ajudam a vincular um conjunto de objetos em um executável (por exemplo, linguagem C). Como mencionado acima, arquivos.exe e arquivos bytecode são arquivos de objeto produzidos ao usar Visual Basic e Java, respectivamente. Os arquivos.exe são executados diretamente na plataforma Windows, enquanto os arquivos bytecode precisam de um interpretador para execução.

A maioria dos aplicativos de software são distribuídos apenas com o objeto ou arquivos executáveis. É possível converter o objeto ou arquivos executáveis de volta para seus arquivos de origem originais por descompilação. Por exemplo, as ferramentas do descompilador podem descompilar arquivos java.class (bytecode) em seus arquivos.java originais.

Qual é a diferença entre programa fonte e programa objeto?

Programa fonte é um programa legível por humanos escrito por um programador. Ele é escrito em linguagens de alto nível, como Java ou C. Portanto, um programa fonte é legível por humanos. Não é compreensível pela máquina.

Por outro lado, o programa Objeto é um programa executável de máquina criado após a compilação de um programa fonte. Ele contém linguagens de nível inferior, como assembly ou código de máquina. Portanto, o programa objeto não é legível pelo humano. É compreensível pela máquina.

Diferença entre o programa-fonte e o programa-objeto em formato tabular
Diferença entre o programa-fonte e o programa-objeto em formato tabular
Diferença entre o programa-fonte e o programa-objeto em formato tabular
Diferença entre o programa-fonte e o programa-objeto em formato tabular

Resumo – Programa Fonte vs Programa Objeto

A diferença entre Programa Fonte e Programa Objeto é que o Programa Fonte é um programa legível por humanos escrito por um programador enquanto o Programa Objeto é um programa executável por máquina criado pela compilação de um programa fonte.

Recomendado: