Categorias

Artigo sobre a linguagem Java

Introdução

Ok! Todo mundo fala dessa moderna linguagem, é chícara pra cá, café pra lá, e você no meio, sem entender nada… Mas o quê, afinal, é essa tal de "Java"? Avance e você poderá dizer pro seus amigos que não conhece Java só de nome, já deu uma aprofundada na relação. E eles vão morrer de inveja!

Didaticamente, podemos imaginar o Java como um computador, uma máquina virtual. Não uma máquina qualquer, podemos considerá-la um Rolls Royce (alguém perguntaria: "Por que não Ferrari?". Bem, digamos que Java ainda não é um primor em velocidade). E, como todo carro de luxo que se preze, vem cheio de recursos. Temos suporte a impressora, telas gráficas, teclado, mouse, rede, arquivos, e muitas outras coisas.

Você pergunta: "Nossa, quanto custa este computador?". Respondo: Nada! Este computador, muito bem bolado, é dado de graça pela Sun, sua inventora. Só tem um detalhe: essa máquina não existe, pelo menos não fisicamente. Mas não pense que isso é uma coisa ruim, não. É justamente esse detalhe que torna Java tão versártil!

Na verdade, Java é um conjunto de especificações: da linguagem de programação, do formato do arquivo .class, da API e da máquina virtual. O segredo está em emular essa máquina nos diversos aparelhos existentes. Digo aparelhos porque Java não é só para microcomputadores, tem pra celular, brinquedos (ie.: Lego MindStorms) e, diz a lenda, até relógios.

Quem conhece emuladores sabe como funciona. É como se existisse uma máquina virtual dentro do seu micro, fazendo os programas daquela rodar neste.

A Sun fez a JVM (Java Virtual Machine, como é chamado o emulador do Java) para os principais sistemas de hoje. Temos pra Windows, Linux, Macintosh, … Você já deve ter usado o Java sem perceber, pois existem inúmeros sites na Internet que utilizam Applets. E estes nada mais são do que programas em Java rodando dentro de um browser.

A parte legal do Java é o Development Kit, ou JDK. É ele que nos permite desenvolver programas pra rodarem na JVM.

O JDK está disponível em diversos sabores, a seu gosto. Temos J2SE (Standard Edition), J2EE (Enterprise Edition) e J2ME (Micro Edition).

Para quem já está familiarizado com linguagens de programação procedurais, como o C, ou orientada a objetos, como o C++, aprender a programar em Java é um passo facílimo de se dar.

    Java é uma linguagem orientada a objetos, com algumas características:
  • Garbage Colector: você não precisa ficar gerenciando a sua memória manualmente, Java possui um coletor de lixo embutido;
  • Threads: Java possui suporte nativo a threads, o que significa que seu programa pode rodar vários processos paralelamente;
  • Exceptions: o tratamento de erros no Java é feito por meio de exceções. Programas sujos de if’s nunca mais!
  • Controlled Resources: desde o início, Java foi implementado com a segurança em mente. Para tanto, o acesso a recursos, como arquivos e rede, é bastante controlado;
  • Java API: seguindo o paradigma da orientação a objetos de se reaproveitar tudo ao máximo, a API (Application Programming Interface) do Java é bastante extensa e abrangente. Não reinvente a roda, use as classes da API!

    O melhor aspecto do Java está resumido na frase acima: escreva e compile o seu programa só uma vez, e rode-o em qualquer lugar! E como isto é conseguido?

    Na especificação do Java, existe a descrição dos arquivos .class, que nada mais são que programas em linguagem de máquina, entendido pela JVM. Quando você escreve seu programa em arquivos .java e o compila, é gerado o bytecode de seu programa, que é salvo com a extensão .class. Para rodá-lo, a JVM carrega o .class e executa as instruções contidas ali.

    Você pode rodar seu programa sem qualquer modificação em qualquer sistema. Basta, para tanto, que exista a JVM para a plataforma pretendida. E este é o segredo: a única parte que necessita ser portada é a JVM, e não o seu programa. E, como já foi dito, existem versões da JVM para diversos sistemas e plataformas, a sua escolha.

    Apesar de parecer o contrário, Java não é marca de café ou algo do gênero. Os criadores da linguagem fizeram a associação em referência as noites em claro regadas a café que nós, programadores, passamos. E, acredite, depois de tomar gosto pela programação, você também passará muitas noites em claro!

    Ah, esqueci de dizer na parte "o que é Java?" que Java também é o nome de uma ilha no arquipélago da Indonésia, onde se fala javanês! (e não bytecode ou algo do gênero)