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:
[…] https://jossemar.wordpress.com/2007/10/31/diferencas-entre-jvm-jre-jdk-java-plataform-e-java/ http://www.javafree.org/javabb/viewtopic.jbb?t=866274 […]
Boa definição dos termos…afinal o usuario comum pode se confundir com tantas siglas..
Boa explicação !
As imagens muito boas tbm !
me ajudou num trabalho,obg 🙂
O blog está ativo ainda? tenho umas duvidas!
Amm, baixei o Eclipse com ele posso programar JAVA ME, SE, EE ???
e o NetBeans é igual o Eclipse?
E A PROGRAMAÇÃO DO ME, SE, EE
é diferente uma da outra?
se for diferente seria possivel você exibir um “Hello World” em cada uma delas aqui…
Obrigado.
tendi nada =)
também nao
Por favor, para me ajudar a entender, somente com a JVM eu não consigo rodar programas, eu preciso mesmo é da JVM e as classes necessárias das aplicações. Tipo as que foram incluídas. É isso ?
Conforme você disse:
“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.”
Valeuu
Ótimas definições! Ajudou bastante! valeu!
De facto foi muito bom ter lido este post, bastante didáctico!
Gostei imenso de sua explicação, começarei a dar explicações de java, e precisava de solidificar esses conceitos todos. Abrigado pela ajuda
vai toma no vi
Gostei bastante, precisava de uma explicação assim. Obrigada!