Menu
Coddy logo textTech

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.

Por Kevin Spektor, Cofundador e CTO

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ãoLinguagem
.pyPython
.c, .hC
.cpp, .hppC++
.javaJava
.jsJavaScript
.goGo
.rsRust

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:

  1. Um compilador traduz o programa inteiro antes. Executar gcc hello.c -o hello lê o código-fonte em C e grava um novo arquivo, hello, cheio de código de máquina. Você pode apagar hello.c depois e hello continua executando.
  2. Um interpretador executa o código-fonte diretamente. Executar python3 hello.py inicia o interpretador Python, que lê hello.py e 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:

TermoQuem lêExemplo
Código-fontePessoas e compiladorestotal = price * 3 em app.py
Código objetoO linkerhello.o, gerado por gcc -c hello.c
Código de máquina (executável)A CPUhello 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 if e print sã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ão prix = 4 e # 合計を計算する 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?
Qualquer arquivo que um programador escreve em uma linguagem de programação é código-fonte: um script Python como 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?
Código-fonte é a versão de um programa escrita por pessoas, em uma linguagem de programação. "Código" é uma palavra mais ampla, que também cobre o que as ferramentas produzem a partir dele, como código de máquina, bytecode ou código gerado automaticamente. No dia a dia, programadores dizem "código" para falar do código-fonte, e o contexto deixa claro.
Como consigo o código-fonte de um programa?
Nos seus próprios projetos, o código-fonte é o conjunto de arquivos que você escreveu, normalmente guardado em um repositório Git. Em software de código aberto, o código-fonte é publicado, muitas vezes no GitHub ou no GitLab. Em um programa de código fechado você normalmente não consegue: só tem o executável compilado, e um descompilador dá no máximo uma aproximação, sem os comentários e os nomes originais.
HTML é código-fonte?
Sim. HTML é uma linguagem de marcação, não uma linguagem de programação, mas os arquivos .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.
O que é gerenciamento de código-fonte?
Gerenciamento de código-fonte, também chamado de controle de versão, é a prática de registrar cada mudança nos arquivos de um projeto para você ver quem mudou o quê, voltar a uma versão anterior e juntar o trabalho de várias pessoas. O Git é a ferramenta mais usada para isso, e serviços como GitHub e GitLab hospedam repositórios Git online.
Coddy programming languages illustration

Aprenda a programar com o Coddy

COMEÇAR