← Glossário
Desenvolvimento

O que é Just-in-Time Compiler?

JIT Compiler

É um componente de compilação que traduz o código de software para a linguagem de máquina instantaneamente enquanto o programa está sendo executado, melhorando o desempenho.

Definição

O Just-in-Time Compiler é um mecanismo de software que converte código-fonte ou código intermediário em código de máquina durante a execução do programa. Ao contrário dos métodos tradicionais de compilação antecipada, em vez de traduzir todo o código desde o início, ele processa as partes necessárias em tempo de execução. Assim, garante a obtenção de um tempo de início rápido e de um alto desempenho em tempo de execução. É frequentemente preferido em máquinas virtuais modernas e linguagens interpretadas.

Analogia: É como um intérprete que, em vez de traduzir um livro em língua estrangeira inteiramente para o português com antecedência, traduz instantaneamente para o fone de ouvido à medida que o palestrante fala no palco.

Como funciona

Quando o programa começa a ser executado, o código é primeiro interpretado a nível de bytecode. Quando são detectados blocos de código executados com frequência e críticos para o desempenho, este componente entra em ação. Ele converte os blocos relevantes diretamente em instruções de máquina que o processador pode entender e os armazena na memória para executá-los rapidamente em chamadas subsequentes.

Onde é usado

É amplamente utilizado na Java Virtual Machine, no .NET Common Language Runtime e nos motores JavaScript em navegadores web modernos.

Costuma ser confundido com

Ao contrário do conceito de compilação JIT, que é o próprio ato de compilação em tempo de execução, refere-se ao motor de software concreto que realiza este processo.

Perguntas e respostas

Por que o compilador JIT acelera o programa?

Como ele converte trechos de código que se repetem com frequência em código de máquina e os armazena em cache, ele elimina a necessidade de reinterpretar o código a cada vez.

Qual é a diferença dele para os compiladores AOT?

Enquanto os compiladores AOT convertem o código inteiramente para a linguagem de máquina antes de o programa ser executado, este componente realiza a compilação dinamicamente enquanto o código está em execução.

Termos relacionados

Esta explicação foi escrita em linguagem simples para a TreScout com IA e traduzida automaticamente do original em turco · a versão turca é a que vale. Se algo parecer errado ou faltando, escreva para hello@trescout.com. Ler em turco →