23
Introdução à Linguagem Introdução à Linguagem de Programação de Programação JAVA JAVA Aula 02 Introdução a Plataforma JAVA

Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

Embed Size (px)

Citation preview

Page 1: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

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

JAVAJAVA

Aula 02Introdução a Plataforma JAVA

Page 2: 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

Page 3: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma 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

Page 4: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

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

Page 5: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

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

Page 6: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

Composição da Plataforma Java

Page 7: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

Processo de Compilação e Execução em Java

Page 8: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma 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

Page 9: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

Portabilidade da Plataforma Java (2)

Page 10: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

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

Page 11: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

Distribuição das APIs

Page 12: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

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.

Page 13: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

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.

Page 14: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

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

Page 15: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

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.

Page 16: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

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.

Page 17: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

Estrutura de Diretórios Adicional

j2sdk1.4.2

demo include src.zip

jfc jpdaapplet plugin

Page 18: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

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.

Page 19: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

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.

Page 20: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

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.

Page 21: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

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.

Page 22: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

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.

Page 23: Introdução à Linguagem de Programação JAVA Aula 02 Introdução a Plataforma JAVA

Características da Linguagem Java

• Simples• Independente de

Arquitetura• Orientada a

Objetos• Portável• Distribuída

• Performática• Interpretada• Multithread• Robusta• Dinâmica• Segura