O que é código-fonte?
Código-fonte é o texto legível de um programa, escrito por um programador em uma linguagem como Python, Java ou C e salvo em arquivos de texto puro, que um compilador ou interpretador transforma em instruções que o computador consegue executar.
Atualizado em 24 de setembro de 2026
Abra qualquer arquivo terminado em .py, .c ou .java em um editor de texto simples e você estará lendo código-fonte. É o mesmo tipo de arquivo que uma lista de compras: letras, dígitos, espaços e quebras de linha. O que o torna um programa é que o texto segue as regras de uma linguagem de programação, então uma ferramenta consegue transformá-lo em instruções para o processador.
Como é o código-fonte
Aqui está um programa Python completo. Cada linha é código-fonte, inclusive o comentário, que o computador ignora e o próximo programador lê.
Total: 12
O mesmo programa em C também é código-fonte, só que em outra linguagem, com outras regras:
#include <stdio.h>
int main(void) {
int price = 4;
printf("Total: %d\n", price * 3);
return 0;
}
Uma aplicação real tem milhares de arquivos como esses. O kernel do Linux tem mais de 30 milhões de linhas de código-fonte, e um pequeno app web pode facilmente ter algumas centenas de arquivos. Cada arquivo tem uma extensão que diz às ferramentas qual linguagem ele contém:
| Extensão | Linguagem |
|---|---|
.py | Python |
.c, .h | C |
.cpp, .hpp | C++ |
.java | Java |
.js | JavaScript |
.go | Go |
.rs | Rust |
Código-fonte é texto puro
Código-fonte não tem fontes, cores nem formatação escondida. As cores que você vê em um editor são adicionadas pelo editor para facilitar a leitura; elas não ficam salvas no arquivo. É por isso que você escreve código em um editor de código como o VS Code e nunca no Microsoft Word: um processador de texto salva dados de formatação e aspas "inteligentes", e o resultado é um arquivo que a linguagem não consegue ler, geralmente rejeitado com um erro de sintaxe.
Como é só texto, um programa pode até guardar o código-fonte de outro programa em uma string e executá-lo:
<class 'str'>
3 lines of text
Total: 12
Até a última linha, source é uma string comum. exec a entrega ao Python, que lê o texto e o executa. Essa é a vida inteira do código-fonte em miniatura: primeiro texto, depois instruções.
Como o código-fonte vira um programa em execução
O processador do seu computador não sabe ler Python nem C. Ele só executa código de máquina, que são instruções binárias específicas de um tipo de CPU (x86-64 na maioria dos notebooks e servidores, ARM em celulares e nos Macs com Apple Silicon). Alguém precisa traduzir. Há duas formas principais:
- Um compilador traduz o programa inteiro antes. Executar
gcc hello.c -o hellolê o código-fonte em C e grava um novo arquivo,hello, cheio de código de máquina. Você pode apagarhello.cdepois ehellocontinua executando. - Um interpretador executa o código-fonte diretamente. Executar
python3 hello.pyinicia o interpretador Python, que lêhello.pye executa suas instruções. Nenhum arquivo de programa separado é gerado, então o código-fonte precisa estar lá toda vez.
Muitas linguagens misturam as duas formas. O código-fonte Java é compilado pelo javac em bytecode (arquivos .class), e a Máquina Virtual Java executa esse bytecode. A comparação completa está na página compilador vs interpretador.
Código-fonte, código objeto e código de máquina
Esses três termos descrevem o mesmo programa em etapas diferentes:
| Termo | Quem lê | Exemplo |
|---|---|---|
| Código-fonte | Pessoas e compiladores | total = price * 3 em app.py |
| Código objeto | O linker | hello.o, gerado por gcc -c hello.c |
| Código de máquina (executável) | A CPU | hello no Linux ou macOS, hello.exe no Windows |
Se você abrir um executável compilado em um editor de texto, verá símbolos ilegíveis, porque ele é binário, não texto. Em um Mac, os quatro primeiros bytes do programa hello acima são cf fa ed fe em hexadecimal, a marca de um executável Mach-O. Você pode examinar valores brutos como esses com o conversor de bases numéricas.
Código aberto e código fechado
Quem pode ler o código-fonte é uma questão tanto jurídica quanto técnica. Software de código aberto (open source) publica seu código-fonte sob uma licença que permite a qualquer pessoa ler, alterar e compartilhar. Python, Linux e Firefox são de código aberto. Software de código fechado (proprietário) distribui só o programa compilado. O Microsoft Windows e o Adobe Photoshop são de código fechado, e o código-fonte deles é segredo comercial.
O código-fonte também é protegido por direitos autorais, como um livro. Encontrar um código na internet não significa que você pode reutilizá-lo: confira o arquivo de licença, muitas vezes chamado LICENSE, antes de copiar qualquer coisa para o seu projeto.
Equívocos comuns
- "Exibir código-fonte mostra o código-fonte de um site." Mostra o HTML, o CSS e o JavaScript que o seu navegador recebeu. O lado do servidor do site (escrito em Python, Java, PHP ou outra linguagem) nunca sai do servidor, então você não consegue vê-lo.
- "Um descompilador devolve o código-fonte original." Um descompilador reconstrói um código legível a partir de um programa compilado, mas os comentários somem e os nomes muitas vezes se perdem, então o resultado é um palpite sobre o código-fonte, não o arquivo que os autores escreveram.
- "Código e código-fonte são a mesma coisa." Código-fonte é a versão escrita por pessoas. "Código" é mais amplo e também cobre código de máquina, bytecode e código gerado.
- "Código-fonte precisa ser em inglês." Palavras-chave como
ifeprintsão palavras em inglês, mas nomes de variáveis, comentários e strings podem estar em qualquer idioma. Os arquivos de código-fonte do Python 3 são UTF-8 por padrão, entãoprix = 4e# 合計を計算するsão ambos válidos.
Para onde ir agora
O código-fonte é verificado antes de executar, e a primeira coisa que a maioria dos iniciantes encontra é o erro de sintaxe. Para ver como as duas formas de executar código-fonte diferem, leia o que é um compilador e depois compilador vs interpretador. Você pode escrever e executar seu próprio código-fonte no navegador no playground de Python ou começar o curso de Python.
Perguntas frequentes
Qual é um exemplo de código-fonte?
app.py, um arquivo C como main.c ou o JavaScript de uma página web. Até uma única linha como print("Hello") salva em um arquivo .py conta. Programas como o Firefox ou o Linux são feitos de milhões de linhas de código-fonte.Qual é a diferença entre código e código-fonte?
Como consigo o código-fonte de um programa?
HTML é código-fonte?
.html que um desenvolvedor escreve são o código-fonte de uma página web, e os navegadores chamam essa visualização de "Exibir código-fonte da página". O mesmo vale para os arquivos CSS e para os arquivos JavaScript que uma página carrega.