Pular para o conteúdo principal

O que é Java ?

Java é uma linguagem que vem dominando o mundo da programação. Ela é baseada na linguagem C++, com a diferença que as estruturas complexas, que não deram muito certo, foram removidas. O resultado é que a linguagem Java é simples e poderosa.

Tornar-se um programador profissional passa inevitavelmente por aprender Java. Em verdade, ainda existem nichos reservados para outras linguagens. Por exemplo, na área de jogos e programas de sistemas ainda há predominância do uso de C/C++. 

O grande apelo da linguagem Java sempre foi: "Escreva uma vez rode em qualquer lugar". Ou seja, a linguagem Java foi projetada para ser indepedente de plataforma. Ela consegue isso através do uso de uma máquina virtual (JVM - Java Virtual Machine).

Os programas Java não rodam diretamente no sistema nativo. Na verdade, eles são compilados para rodar na JVM. Os códigos que rodam na JVM são chamados de bytecodes. Esta abordagem tem a vantagem que um mesmo código compilado pode rodar em diferentes plataformas, para isso basta que exista uma máquina virtual para cada plataforma. 

Quando pensamos em Java, temos que separar três coisas: a linguagem propriamente dita, as API's e a máquina virtual. A linguagem e a máquina virtual já foram comentadas. Quanto as API's (Application Programming Interface), elas são bibliotecas de funções (em verdade classes com métodos) prontas para serem usadas pelo programador.

O que chamamos de plataforma Java é o ambiente que permite os programas rodem, ou seja, ela é a união das API's com a JVM. Note que é possível existir uma plataforma que rode programas da linguagem Java, mas que a máquina virtual ou as API's não sejam as da Oracle. A google recentemente desenvolveu uma máquina virtual chamada Dalvik para plataforma Android

Comentários

Postagens mais visitadas deste blog

As plataformas ou edições Java

A partir da versão 1.2 a plaforma Java passou a se chamar Java 2 Platform e foi divida em três edições: J2SE (Java 2 Platform, Standard Edition): Esta edição fornece um ambiente de desenvolvimento para várias aplicações. Inclui suporte a GUI, threads, entrada/saída, rede, applets, JavaBeans, acesso a banco de dados, XML, CORBA, segurança e invocação remota de método. J2ME (Java 2 Platform, Micro Edition): Esta edição fornece um ambiente desenvolvimento para dispositivos eletrônicos com baixo poder computacional, por exemplo, celulares.  J2EE (Java 2 Platform, Enterprise Edition): Esta edição fornece uma plataforma para desenvolvimento de aplicações distribuídas. As três antigas edições foram rebatizadas e surgiram mais duas. Hoje temos 5 plataformas: Java SE (Java Platform, Standard Edition). Antiga J2SE Java EE (Java Platform, Enterprise Edition). Antiga J2EE Java ME (Java Platform, Micro Edition). Antiga J2ME Java Card : Para dispositivos embarcados com limita...

Criando o "Olá Mundo"

A web page that points a browser to a different page after 2 seconds If your browser doesn't automatically go there within a few seconds, you may want to go to the destination manually. Nosso primeiro programa será evidentemente o famoso "Ola Mundo". Abaixo segue o código fonte: public class Ola{ public static void main(String[] args){ System.out.println("Ola Mundo"); } } public class OlaMundo{    public static void main(String[] args){       System.out.println("Olá Mundo");    } } O programa deve ser salvo exatamente com nome da classe seguido da extensão .java ,ou seja, no nosso exemplo o arquivo fonte deve ser nomeado como OlaMundo.java. Para compilar use o seguinte comando no shell:  javac OlaMundo.java A compilação resulta em um arquivo chamado OlaMundo.class Para rodar o programa use o seguinte comando no shell (prompt):  java OlaMundo Se tudo ocorreu bem, o programa emitirá na tela a mensagem Olá Mundo.

JIT (Just-in-time)

A máquina virtual java permite a portabilidade dos programas Java. Esta portabilidade tem um preço que é pago em termos de velocidade de execução. Sendo os programas Java interpretados, eles são mais lentos que as suas versões compiladas em C/C++. A tecnologia JIT (just-in-time) foi desenvolvida para melhorar o desempenho dos programas escritos na linguagem Java. Usando JIT, os bytecodes são convertidos para a linguagem de máquina nativa o que aumenta a velocidade de excução dos códigos.  Mesmo usando o JIT, o programas Java continuam sendo mais lentos que suas versões compiladas, pois antes do JIT entrar em ação os bytecodes tem que ser carregados na memória, ou seja, ainda existe um overhead.