Além do Trabalho

Diferenças entre JVM, JRE, JDK, Java Plataform e Java

Publicado por: jossemaravila em: Quarta-feira, 31/Outubro/2007

Sempre me pergutam sobre as diferenças entre JRE e JDK, Java e JavaEE, por isto resolvi descrevê-las aqui:

JVM (Java Virtual Machine)

É a peça chave para fornecer capacidade de multiplataforma para as aplicações java: “Write once, run everywhere”.
A JVM é a máquina virtual responsável por interpretar e executar o código Java compilado (bytecode) e portanto são provedoras de formas e meios de o aplicativo conversar com o sistema operacional.

Esta abstração viabiliza a implementações da JVM para diferentes plataformas de hardware e de sistemas operacionais, o que possibilita que aplicativos Java sejam multi-plataforma.

Uma JVM pode ser desenvolvida por qualquer organização (comunidades / institutos / empresas), desde que sigam as especificações para a Java Virtual Machine.

JRE (Java Runtime Environment)

É composto pela JVM e pela biblioteca de classes Java utilizadas para execução de aplicações java, estas bibliotecas são chamadas de APIs Java.

Portanto para rodarmos uma aplicação java é necessário instalarmos uma JRE no computador onde o software foi instalado.

JDK (Java Development Kit)

É o conjunto de ferramentas necessárias para realizar o desenvolvimento de aplicações java e inclui a JRE e ferramentas de programação, como:

  • javac – compilador
  • jar – empacotador
  • javadoc – ferramenta para geração de documentação

Java Platform

São “distribuições” ou edições de programas e APIs java relacionadas entre si.

Estas edições têem o intuito de facilitar o download e a e instalação de ferramentas e APIs para realizar o desenvolvimento e execução de aplicações java.

Cada edição contém ferramentas e APIs específicas para um determinado tipo de aplicação, veja quais são as edições disponíveis:

  • Java SE
    É a base da plataforma Java e é utilizada para desenvolver aplicativos desktops e servidores.
  • Java EE
    Necessária para desenvolver softwares que rodam em servidores de aplicações (geralmente aplicações web).
  • Java ME
    Utilizada para desenvolver softwares para dispositivos móveis e para dispositivos com pouca capacidade de processamento, como por exemplo: telefones celulares e impressoras.

Java

É a linguagem de programação Java.

Veja detalhes e composições dos itens acima através da galeria de imagens abaixo:

3 Respostas para "Diferenças entre JVM, JRE, JDK, Java Plataform e Java"

Boa definição dos termos…afinal o usuario comum pode se confundir com tantas siglas..

Boa explicação !
As imagens muito boas tbm !

Deixe uma resposta