Prévia do material em texto
JAVA
Ambiente Java
Prof. M. Sc. Edgar Gurgel
Ambiente JAVA
Compilação Virtual x Interpretação
Unicodes
Bytecodes
JVM (Java Virtual Machine)
Applets JAVA
POOII 2
Java é Independente de Plataforma
• Programas Java não são compilados para uma plataforma
de hardware específica, mas, sim, para uma forma
intermediária de código (bytecodes) destinada à máquina
virtual Java, denominada JVM (Java Virtual Machine).
• A JVM é, na verdade, um interpretador de bytecodes para a
plataforma na qual eles são executados. Por ser possível
implementar uma JVM para qualquer plataforma, um
mesmo programa Java pode ser executado em qualquer
arquitetura que disponha de uma JVM.
POOII 3
Ambiente JAVA
CÓDIGO-FONTE EM JAVA
COMPILAÇÃO VIRTUAL
Código executável para a JVM (Máquina Virtual JAVA)
(em bytecodes)
INTERPRETAÇÃO
(para a arquitetura desejada)
POOII 4
Java: Como funciona?
POOII 5
Java: Como funciona?
POOII 6
Java: Como funciona?
POOII 7
Java: Onde funciona?
Qualquer plataforma de software ou
hardware que possua a Máquina
Virtual Java (JVM).
HotJava Internet Netscape Cliente
Explorer Java
POOII 8
Bytecodes
Código para a Máquina Virtual JAVA
Executável na Máquina Virtual Java, que é o
interpretador (programa) da linguagem.
Representação compacta de uma espécie de
linguagem assembly de uma arquitetura
orientada a pilha;
Compilação gera bytecodes que são, então,
interpretados.
POOII 9
Java: Como funciona?
Java simplifica a distribuição de aplicativos.
POOII 10
Contexto de JAVA na Internet
POOII 11
Java Script
Não confunda Java com JavaScript. Apesar do
nome parecido funcionam de forma diferente;
O JavaScript é uma linguagem interpretada, ou
seja, o código é anexado ao arquivo HTML e o
browser lê e executa os comandos.
POOII 12
Aplicações X applets (miniaplicativos)
• Applet é um programa especial escrito em Java
adaptado para instalação e execução dentro de páginas
HTML. Estas páginas podem então ser visualizadas em
um web browser.
• Aplicação é um programa mais geral escrito na
linguagem Java. Não requer um browser para sua
execução. De fato, Java pode ser usada para criar todo
tipo de aplicações que usualmente você implementa
com outras linguagens mais convencionais.
POOII 13
Applets JAVA
Originalmente, “pequenos" programas (miniaplicativos)
JAVA – atualmente, possibilita uma programação robusta.
• São disponibilizados em Web Servers;
• Se hospedam dentro de páginas HTML;
• Código da Applet é copiado para o browser, juntamente com
a página HTML;
• O código é executado pela JVM instalada no browser;
• A interface gráfica do applet ocupa uma área bidimensional
da página HTML.
POOII 14
Applets JAVA – Seguranca
Considerando a possibilidade de que as aplicações
possam ser obtidas através de uma rede, a linguagem
Java possui mecanismos de segurança que podem, no
caso de applet, evitar, por exemplo, qualquer operação
no sistema de arquivos da máquina-alvo, minimizando
problemas de segurança.
Tal mecanismo é flexível o suficiente para determinar
se um applet é considerado seguro, especificando nesta
situação diferentes níveis de acesso ao sistema-alvo.
POOII 15
Applets JAVA – Seguranca
POOII 16
Ambiente de Desenvolvimento JAVA
Escrita
Editores de Texto ASCII (emacs, vi, nedit, winedit,
notepad, etc) ou UNICODE
IDE (Integrated Development Enviroment)
É uma configuração de programação única na qual você tem todas as
ferramentas necessárias à sua disposição. Geralmente, um editor de código-
fonte que é cercado por um compilador, um depurador e outras ferramentas de
desenvolvimento.
Jbuilder, JEdit, JCreator, Net Beans, etc.
POOII 17
UNICODE
Conjunto de caracteres (http://www.unicode.org)
Código de 16 bits (216 possíveis caracteres a serem
representados).
Pode representar praticamente toda linguagem escrita de
uso comum no mundo.
ASCII somente 7 bits (idioma inglês).
ISO Latin-1 somente 8 bits (principais idiomas do Oeste
europeu).
POOII 18
UNICODE
Conjunto de caracteres UNICODE
Exemplo:
\u0020 caractere de espaço
\u3c00 caractere π
POOII 19
Ambiente de Desenvolvimento JAVA
Compilação virtual
javac <programa-fonte.java>
Exemplo:
javac meuprograma.java
OBS:
Será gerado um arquivo (ou mais) com extensão .class
A compilação virtual é a mesma para aplicativos e applets.
POOII 20
Ambiente de Desenvolvimento JAVA
Execução
JAVA PURO (aplicativo)
java <arquivo em bytecode>
Exemplo:
java meuprograma
OBS:
l Após compilado, pega-se o meuprograma.class e interpreta-
se o código.
l Só utiliza-se diretamente o interpretador java em aplicativos.
POOII 21
Ambiente de Desenvolvimento JAVA
Execução
APPLET JAVA (miniaplicativo)
appletviewer <arquivo em html>
Abrir num browser o arquivo html que faz chamada
a uma applet Java
Browsers "Java Compatível "
(HotJava, Internet Explorer, Netscape Navigator 2.0 ou +)
POOII 22
Ambiente de Desenvolvimento JAVA
Depuração
jdb <arquivo.class>
Geração de documentação
javadoc
POOII 23
Ambiente de Desenvolvimento JAVA
E s c r i t a , C o m p i l a ç ã o , D e p u r a ç ã o e
Interpretação
Ambientes IDE
JEDIT
JCREATOR - LE V4.0(www.jcreator.com)
ECLIPSE
NET BEANS 5.5.1
JBUILDER
DR. JAVA
POOII 24
Ambiente de Desenvolvimento JAVA
Java 2 Plataform Standard Edition (J2SE)
plataforma voltada para aplicações clientes, equivalente ao
antigo JDK, será encontrada nos browser’s web
Java 2 Enterprise Edition (J2EE)
plataforma java para desenvolvimento e execução de aplicações
servidoras, possui suporte para desenvolver aplicações robustas
e escaláveis, para suportar grandes números de usuários.
Java 2 Micro Edition (J2ME)
plataforma voltada para pequenos devices (telefones celulares,
televisores, aparelhos eletrônicos em geral)
POOII 25
Ambiente de Desenvolvimento JAVA
Java 2 Software Developer’s Kit (J2SDK), ou Java 2
Plataform, Standard Edition (J2SE)
http://java.sun.com/j2se/1.5.0/download.html
Editor de textos ASCII simples, tal como o “Bloco de Notas”
de qualquer versão do Microsoft Windows.
Adicionalmente, também é desejável o uso de um navegador
compatível com o Java, tal como o Sun HotJava, Netscape
Communicator 4.5 ou o Microsoft Internet Explorer 4 ou
versões superiores deste softwares.
IDEs voltadas para a programação Java tais como: Gel, Eclipse
e JCreator; também são alternativas para o desenvolvimento de
aplicações Java.
POOII 26
Ambientes Visuais de Desenvolvimento Java
• NetBeans ©NetBeans.org
– http://www.netbeans.org/downloads/index.html
• Eclipse ©Eclipse.org Software
– http://www.eclipse.org/downloads/index.php
• JBuilder ©Borland
– http://www.borland.com/jbuilder/
• VisualAge for Java ©IBM
– http://www-306.ibm.com/software/awdtools/vajava/
• Dr. Java
– http://gsd.ime.usp.br/~kon/MAC110/instala.semiold/
POOII 27
Poo usando JavaProf. Edgar Gurgel 28
http://java.sun.com/docs/books/tutorial/
O Sun Java 2 Software Developer’s Kit
O kit é composto de quatro partes básicas, que são:
• Um conjunto de ferramentas para desenvolvimento de
aplicações Java.
• Uma extensa biblioteca de classes padronizadas Java,
denominada “Java Standard API”.
• Um ambiente de execução Java.
• Exemplos, código-fonte das porções públicas e a
documentação das APIs.
POOII 29
Programa para geração de
documentação (javadoc).
Compilador para linguagem Java (javac).
As principais ferramentas incluídas no kit são:
Máquina virtual Java (java).
Utilitário para criar e manter arquivos
compactados Java Archive (jar).
Visualizador de applets (appletviewer).
Quinto realese do SDK padrão Java, J2SE 5.0, codinome “Tiger”:
http://java.sun.com/j2se/1.5.0/download.html
O Ambiente Java
Aplicativos e Miniaplicativos (applet)
Classes e API Java
Java Virtual Machine (JVM)
Adaptador Adaptador
Sistema
Operacional
Java
Sistema
Operacional
Hardware Hardware Hardware
Browse
Sistema
Operacional
Rigorosamente falando, a plataforma Java é constituída apenas de suas classes e API´s específicas,
juntamente com a JVM. A plataforma Java pode ser adaptada para hardware específico de três formas:
(a) por meio de um adaptador específico para cada sistema operacional/hardware específico;
(b) por meio de um adaptador específico para cada browse específico;
(c) Sendo integrada a um sitema operacional nativo Java que opere para um certo hardware.
(a) (b) (c)
POOII 32
A Criação de Aplicações Java – 1° Passo
Editor
ASCII
Arquivo
.java
O “primeiro passo” consiste da edição do programa por meio de um editor
de textos capaz de salvar arquivos no formato ASCII (por exemplo, o bloco
de notas (Notepad) do Microsoft Windows).
Após a edição de qualquer programa Java, os arquivos devem,
obrigatoriamente ser salvos com a extensão .java. Tais arquivos de
programa são chamados de arquivos-fonte de programa ou apenas
arquivos-fonte.
POOII 33
A Criação de Aplicações Java – 2° Passo
Editor
ASCII
Arquivo
.java
Compilador Java
(javac)
Arquivo
.class
O “segundo passo” é a compilação do programa, que deve ser feita pelo programa javac fornecido
com o SDK. Não encontrando erros, o compilador javac transformará o arquivo-fonte em um ou mais
arquivos de extensão .class. Cada arquivo .class contém bytecodes, formato intermediário da
plataforma Java, equivalentes do programa editado. Existindo erros, os mesmos devem ser localizados
e corrigidos, repetindo-se, para isso, os passos 1 e 2.
POOII 34
A Criação de Aplicações Java – 3° Passo
Editor
ASCII
Arquivo
.java
Compilador Java
(javac)
Arquivo
.class
Máquina Virtual
Java (java)
Depois de compilado sem erros, o programa Java pode ser
executado, o que corresponde ao último passo da seqüência de
criação de programas. No caso de aplicações Java, acionamos o
programa java, que corresponde à máquina virtual que interpretará
os bytecodes, informando apenas o nome do arquivo .class que
desejamos executar.
No caso de miniaplicativos (applet), deve-se utilizar o
programa appletviewer, informando o nome do arquivo
HTML que incorpora o applet.
POOII 35
Primeira Aplicação Java
public class AloMundo {
public static void main(String args[]) {
System.out.println("Alo Mundo !");
}
}
Com o J2SDK adequadamente instalado, podemos continuar com a construção de
nossas primeiras aplicações Java. Utilizando o editor ASCII de sua preferência,
digite exatamente o programa exemplificado a seguir, isto é, “observando” as letras
minúsculas e maiúsculas indicadas. Não se preocupe no momento com o
significado de cada uma de suas partes.
Crie um diretório apropriado para salvar o arquivo editado e garanta que seu nome
seja AloMundo.java, respeitando mais uma vez a questão das letras minúsculas e
maiúsculas. Os compiladores Java exigem que a extensão dos arquivos-fonte seja
sempre .java.
POOII 36