Olá.
Estou estudando alguns pontos da Tecnologia Java e me surgiram algumas dúvidas que em leituras no site da Sun (www.java.sun.com) e Livros não consegui uma resposta clara e objetiva. Acredito que isso seja difícil até para alguns profissionais experientes.
A Tecnologia Java possui 3 plataformas: JSE, JEE e JME. Cada uma destas para uma finalidade específica de desenvolvimento.
-
A JSE é para desenvolvermos aplicações desktop’s, servidoras e applets.
-
A JEE é para desenvolvermos aplicações corporativas, no estilo Web e distribuídas em rede.
-
JME é para desenvolvermos para dispositivos com pouco recurso de memória.
Minhas dúvidas começam assim:
Sei que a JRE é formada por um conjunto de API’s e a própria JVM. E sei, também, que a JVM é quem interpreta o arquivo criado na compilação (bytecode). Neste caso, acredito que somente a JVM é necessária ser instalada na máquina do cliente. Porém, alguns Livros e sites falam que tem que se instalar a JRE. Por quê?
Para executar uma aplicação desenvolvida em Java eu preciso da JRE ou JVM? Melhorando, se eu desenvolver uma aplicação com interface gráfica com Swing (JSE) eu preciso instalar no cliente a JVM ou JRE? Se eu desenvolver uma aplicação em Java com Servlets e JSP’s (JEE) eu preciso instalar no cliente a JVM ou JRE?
Tudo que posso desenvolver com JSE: SOMENTE aplicações gráficas com Swing, AWT e Applets (via browser). Entendo que aplicações desktop’s são aplicações que a interface (composta da parte visual e regra de negócio) fica na máquina cliente e a única coisa que teria fora é o banco de dados. Montando assim um modelo Cliente/Servidor. Estou certo nesta visão?
Encontro conceitos, até no site da Sun, que poderiam ser desenvolvidos com a JSE aplicações servidoras. O que seria aplicações servidoras?
Quando desenvolvo uma aplicação com Servlet e JSP estou utilizando a JEE? É isso que baixo do site da Sun para desenvolvimento JEE? O que vem neste download? Como posso identificar que estou trabalhando em JEE?
Posso dizer que tudo que desenvolvo com JEE é SEMPRE algo que será utilizado via browser?
Afinal quais são as aplicações desenvolvidas com cada uma destas edições (JSE e JEE)?
Obrigado