introdução à linguagem de programação java aula 02 introdução a plataforma java
TRANSCRIPT
Introdução à Linguagem Introdução à Linguagem de Programação de Programação
JAVAJAVA
Aula 02Introduçã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 lib jre
client server ext fontssecurity applet
bin libjava.exejavac.exejavap.exejavah.exejavadoc.exe
java.exejava.dllawt.dll
tools.jardt.jar
jvm.dll jvm.dll
rt.jarcharsets.jar
localedata.jar
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 include src.zip
jfc jpdaapplet plugin
Diretórios Adicionaisx:\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ásicasjavac – 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