Introdução à Linguagem de
Programação
JAVA
Aula 02
Introdução a Plataforma JAVA
Tópicos da Aula
• Tecnologia Java
– Histórico
– Plataforma Java
– Linguagem Java
Tecnologia Java
• Java é tanto uma linguagem como uma
plataforma
– Em geral plataformas são compostas por
Hardware e Software (SO)
– Java é uma plataforma de Software
– Java é uma linguagem de programação
Histórico (1)
• 1990 – Projeto Green na Sun Microsystem,
gera necessidade de linguagem multi
plataforma para pequenos dispositivos, Oak.
• 1992 – Star 7, um PDA com Oak. Criação da
FirstPerson
• 1992/1994 – Sucessivos fracassos da
FirstPerson no mercado de TV a cabo
Histórico (2)
• 1994 – FirstPerson volta para dentro da Sun,
linguagem Oak passa a se chamar Java
• 1995 – Primeira distribuição do Java a JDK
1.0, Netscape passa a fornecer suporte ao
Java
• 1996 – Javasoft, grupo de negócios Java da
Sun
Composição da Plataforma
Java
Processo de Compilação e
Execução em Java
Portabilidade da Plataforma
Java (1)
“escreva uma vez, rode em qualquer lugar”
• O Java bytecode equivale ao código de
instrução de máquina para a JVM
• O Java bytecode permite a execução do
mesmo programa em qualquer plataforma de
hardware que possua uma JVM
Portabilidade da Plataforma
Java (2)
Distribuições
• Divisão das APIs focadas para ambientes e
segmentos de aplicações diferentes:
– J2ME (Java 2 Platform, Micro Edition) – ambientes
de recursos limitados
– J2SE (Java 2 Platform, Standard Edition) –
ambientes de estações de trabalho
– J2EE (Java 2 Platform, Enterprise Edition) –
ambientes distribuídos, de grandes empresas ou
internet
Distribuição das APIs
Histórico de Versões (1)
• 1.0 (1996) – distribuição inicial: JVM + APIs
Java + ferramentas de desenvolvimento.
Java Runtime Environment (JRE).
• 1.1 (1997) – conceito de innerclasses, que
permitia classes aninhadas em outras classes,
útil para escrever implementações de
interfaces, utilizadas para tratamento de
eventos.
Histórico de Versões (2)
• 1.2 (1998) – versão marcante, melhora da
linguagem e do conjunto de bibliotecas. A
Sun oficialmente designou a plataforma Java
como Java 2.
• 1.3 (2000) – pequenas alterações e correções
• 1.4 (2002) – versão atualmente mais utilizada
• 5 – A distribuição 1.5 foi renomeada para
Java 2 versão 5. Esta é a mais recente
distribuição da linguagem.
Estrutura de Diretórios
j2sdk1.4.2
bin
java.exe
javac.exe
javap.exe
javah.exe
javadoc.exe
lib
jre
tools.jar
dt.jar
bin
java.exe
java.dll
awt.dll
lib
client
server
jvm.dll
jvm.dll
rt.jar
charsets.jar
ext
security
localedata.jar
applet
fonts
Diretórios (1)
x:\j2sdk1.4.2 – Diretório raiz, contém copyright, licensa e README.
Contém também arquivo src.zip com todos os fontes da plataforma
Java2
x:\j2sdk1.4.2\bin – Diretório dos executáveis das ferramentas do Java
Development Kit. O path deve conter uma entrada para este diretório
x:\j2sdk1.4.2\lib – Arquivos utilizados pelas ferramentas de
desenvolvimento, incluindo: tools.jar e dt.jar.
x:\j2sdk1.4.2\jre – Diretório raiz do Java Runtime Environment,
ambiente de execução da plataforma Java 2.
x:\j2sdk1.4.2\jre\bin – Executáveis e DLLs das ferramentas e bibliotecas
utilizadas pela plataforma Java 2.
x:\j2sdk1.4.2\jre\bin\client – arquivos DLLs do Java 2 HotSpot Client
Virtual Machine.
x:\j2sdk1.4.2\jre\bin\server – arquivos DLLs do Java 2 HotSpot Server
Virtual Machine.
Diretórios (2)
x:\j2sdk1.4.2\jre\lib – bibliotecas de código, propriedades e arquivos de
recursos utilizados pelo JRE. Inclui o rt.jar (classes que compõem a
Java API) e charset.jar (classes de conversão de caracteres).
x:\j2sdk1.4.2\jre\lib\ext – diretório padrão para instalação de extensões da
plataforma Java. Inclui o localedata.jar (biblioteca para os pacotes
java.text e java.util).
x:\j2sdk1.4.2\jre\lib\security – arquivos de gerenciamento de segurança.
Inclui arquivos de políticas de segurança (java.policy) e propriedades
de segurança (java.security).
x:\j2sdk1.4.2\jre\lib\applet - bibliotecas de suporte para applets.
x:\j2sdk1.4.2\jre\lib\fonts – contém as fontes TrueType utilizadas pela
plataforma Java 2.
Estrutura de Diretórios
Adicional
j2sdk1.4.2
demo
applet
include
jfc
jpda
src.zip
plugin
Diretórios Adicionais
x:\j2sdk1.4.2\src.zip – arquivo que contém os fontes da plataforma Java 2.
x:\j2sdk1.4.2\demo – exemplos, com código fonte, de programas Java.
x:\j2sdk1.4.2\demo\applets – exemplos de applets.
x:\j2sdk1.4.2\demo\jfc – exemplos de funcionalidades Java 2D e
JFC/Swing.
x:\j2sdk1.4.2\demo\jpda – exemplos utilizando Java Plataform Debugging
Architecture.
x:\j2sdk1.4.2\demo\plugin – exemplos de programas que utilizam o Java
plugin.
x:\j2sdk1.4.2\include – arquivos de cabeçalho C para suporte a
programação nativa utilizando JNI e a Java Virtual Machine Debugger
Interface.
Ferramentas Básicas
javac – compilador da linguagem Java.
java – executor de programas java. O executor interno ao JRE será
descontinuado, de modo que este será utilizado para desenvolvimento
e execução.
javadoc – gerador de documentação de API.
appletviewer – executa e debuga applets sem um browser web.
jar – gerencia arquivos jar.
jdb – java debugger.
javah – gerador de headers e stubs C. Utilizado para escrever métodos
nativos.
javap – desmontador de arquivos .class.
extcheck – utilitário de detecção de conflitos de arquivos jar.
Ferramentas Adicionais (1)
•
•
•
•
rmic – gerador de stubs e skeletons para objetos remotos.
rmiregistry – serviço de registro de objetos remotos.
Rmid- ativação da deamon de sistema RMI
serialver – retorna a classe serialVersionUID.
• native2ascii – conversor de texto para Unicode Latin-1.
Ferramentas Adicionais (2)
• keytool – gerenciador de armazenamento de chaves e
certificados.
• jarsigner – gerador e verificador de assinaturas de arquivos jar.
• policytool – interface gráfica de ferramenta de gerenciamento
de políticas de segurança.
• kinit – ferramenta para obter tickets kerberos v5.
• klist – ferramenta de linha de comando para listar as entradas
de uma tabela de credenciais ou chaves.
• ktab – ferramenta de linha de comando para ajudar a gerenciar
a tabela de entradas e chaves.
Ferramentas Adicionais (3)
• tnameserv – provê acesso ao serviço de nomes.
• idlj – gera arquivos .java que mapea uma interface iDL OMG e
habilita um programa escrito em Java a utilizar as
funcionalidades de CORBA.
• orbd – proporciona suporte para clientes localizarem e
utilizarem objetos persistidos em servidores em um ambiente
CORBA.
• servertool – provê uma interface de fácil utilização para
registrar, remover, iniciar e terminar um servidor.
• unregbean – remove o registro de um pacote de componentes
JavaBeans no ActiveX.
Características da Linguagem
Java
• Simples
• Independente de
Arquitetura
• Orientada a Objetos
• Portável
• Distribuída
•
•
•
•
•
•
Performática
Interpretada
Multithread
Robusta
Dinâmica
Segura
Download

Introdução à Linguagem de Programação JAVA