0 Flares Twitter 0 Facebook 0 0 Flares ×

Olá pessoal! No artigo sobre Java falamos da historia da linguagem e hoje falaremos um pouco sobre seu funcionamento. Para acessar o artigo anterior clique aqui.

No primeiro post, vimos que softwares são sequencias de instruções executadas por um processador, cujo propósito é resolver algum problema. Agora na prática como isto ocorre?

Tudo começa com um texto escrito pelo programador conhecido como código fonte. Ele tem as regras de negócio do software, representadas por palavras e símbolos compreendidos pela linguagem de programação. Vamos criar um programa em Java,  que soma 1 + 1 e imprime o resultado,  para ilustrar o conceito.

public class Soma {
         public static void main (String args[]){
                System.out.println(1+1);
         }
}

No exemplo acima:  public, class, static, void,System.out.println e ( }  são palavras reservadas da linguagem Java. Enquanto,  1+1 é a regra de negócio.  Feito isso, o processador consegue executar e imprimir dois? Absolutamente, não. O código fonte tem que ser traduzido em linguagem de máquina para o processador executá-lo. Este processo é chamado de compilação.

O compilador é um software capaz de traduzir o código-fonte em instruções para um determinado tipo de processador e sistema operacional.  Geralmente, um compilador não produz diretamente o código de máquina, mas sim um programa em linguagem de baixo nível (Assembly). O Assembly  é, então, traduzido para o programa em linguagem de máquina através de montadores. Antes de continuar, vale mencionar que o primeiro compilador foi criado por uma mulher chamada Grace Hopper, em 1952.

compilador

Figura 1: Etapas entre compilação até a execução

Para executar um programa no seu celular é, então,  necessário compilá-lo para o processador e sistema operacional dele. O mesmo processo se faz necessário caso programa seja executado em outro dispositivo. Agora imagine o trabalho,  compilar este programa para os diversos processadores e sistemas operacionais comercializados. Muito trabalho! Não entre em pânico, existe uma solução.

O Java revolucionou este processo criando o conceito de Java Virtual Machine (JVM). JVM é responsável por transformar código Java em linguagem executável de máquina. Como isto ocorre? O compilador Java traduz o código fonte numa linguagem intermediária, o byte code.  Este é independente de plataforma e é reconhecido e executado pela JVM, que têm versões para cada tipo de processador e sistema operacional.  No final o programa em Java é compilado uma única vez e executado em qualquer dispositivo. Isto permite a portabilidade do código.

jvm

 Figura 2: Etapas JVM

Por hoje é só, pessoal. Neste post vimos como um código fonte é executado pelo computador e, também, o  funcionamento da JVM.
Até o próximo post.

 

0 Flares Twitter 0 Facebook 0 0 Flares ×