Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White...

29
Oscar Luiz Monteiro de Farias, D.Sc. 01/98 Copyright by 1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma JAVA

Transcript of Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White...

Page 1: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 1

Bibliografia:

• The Java Platform: A White Paper

Douglas Kramer

Javasoft

http:// java.sun.com

A Plataforma JAVA

Page 2: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 2

O Que é?

• Uma plataforma de software para distribuir e executar applets e aplicações altamente interativas, dinâmicas e seguras, em sistemas de computadores em rede.

• “Write Once, Run Anywhere”

Page 3: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 3

Partes Básicas da Plataforma JAVA

• Java Virtual Machine

• Java Application Programming Interface (Java API)

Page 4: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 4

Java Base Platform (I)

• É a plataforma Java mínima que os desenvolvedores podem assumir com segurança como estando presente para executar applets e aplicações Java.

• Aplica-se a network computers, desktop computers, workstations, etc...

Page 5: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 5

Java Base Platform (II)

• Contém a Java Virtual Machine e um conjunto mínimo de APIs necessárias para executar applets e aplicações.

• Este conjunto mínimo de APIs é denominado Java Applet API ou Java Base API.

• Java Standard Extension API - (em definição pela Javasoft) estenderá a funcionalidade da Java Base API.

Page 6: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 6

Java Embedded Platform API

• Direcionada para para aparelhos eletrônicos de consumo e com poucos recursos e funcionalidade mais especializada que a de um Network Computer.

• Restrições: pequena memória, sem display, não conexão a redes, etc ..

• Impressoras, telefones celulares, copiadoras, fax, eletro-domésticos, etc...

Page 7: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 7

Vantagens da Plataforma Java

• Simplifica o controle de versões e upgrades.

• Reduz o número de plataformas a suportar.

• Os usuários passam a ter uma plataforma neutra para acesso à rede.

• Deslocamento de certas atividades da companhia para os clientes (ex.: preenchimento de formulários).

Page 8: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 8

Applets x Aplicações (I)

• Applets: são “programas” que precisam de um browse (JVM) para serem executados.

• Referências a applets são inseridas em arquivos html (applet tag).

• Normalmente são pequenos, pois é preciso se efetuar o download.

• Restrições de segurança

Page 9: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 9

Applets x Aplicações (II)

• Aplicações: similares às aplicações tradicionais.

• Também precisam de uma plataforma Java para executar (programa em separado, ou embedded no sistema operacional subjacente ou na própria aplicação).

Page 10: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 10

Plataformas Java

• Browsers (Netscape Navigator, Internet Explorer, HotJava, etc...)

• Sistemas Operacionais de desktops, workstations, network computers e mainframes (MVS/IBM).

• família de circuitos integrados JavaChip (alvo: aparelhos de consumo e dispositivos industriais em geral)

Page 11: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 11

A Família JavaChip

• Projeto da JavaSoft e Sun Microelectronics.

• picoJava, microJava e UltraJava• picoJava: é, na realidade, uma

especificação padrão para projeto de um microprocessador que suporte a Máquina Virtual Java.

• picoJava está disponível para licenciamento por fabricantes de chips.

• microJava e UltraJava são chips, em desenvolvimento pela Sun Microelectronics (suportam o JavaOS)

Page 12: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 12

JavaOS

• Sistema Operacional que implementa a Java Base Platform para executar applets e aplicações.

• Implementa a Java Virtual Machine, Java Embedded API, e a funcionalidade subjacente para janelas, redes e sistemas de arquivos.

• Projetado para: Network Computers, aparelhos de consumo, dispositivos industriais.

• Idéia: turn-on instantâneo, inexistência de setup na instalação, upgrade automático, quando em rede.

Page 13: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 13

Java Platform

• Applets and ApplicationsApplets and Applications

Java Base Classes

Java Base API Java Standard Extension API

Java Standard Extension Classes

Java Virtual Machine

Porting Interface

AdapterAdapter Adapter

OSOS OS

Java

OS

HW HW HW HW

browser

NWbrowser Desktop OS Smaller OS Java OS

Page 14: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 14

A Plataforma Java (I)

Possui 2 partes principais:

• Java Virtual Machine: máquina abstrata que pode ser implementada em software ou hardware.

Facilmente portável: via Porting Interface e Adapters.

• Java API: formam uma interface padrão para applets e aplicações, independente do sistema operacional.

Page 15: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 15

A Plataforma Java (II)

• Java API = Java Base API + Java Standard Extension API

• A Java API especifica um conjunto de interfaces em áreas chaves.

• Java Base API: provê o básico da linguagem Java e serviços utilitários, de I/O, de rede, GUI e applets (inclui os packages: lang, util, io, net, awt e applet)

Page 16: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 16

A Plataforma Java (III)

• Java Standard Extension API: estende a funcionalidade da Java Base API.

• Progressivamente algumas destas extensões migrarão para a Java Base API.

• As especificações das extensões são publicadas e submetidas à revisão da indústria.

• A estrutura (framework) da Java API é aberta e extensível.

• A API é organizada em grupos ou conjuntos.

Page 17: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 17

Java Standard Extension API

APIs que migrarão para a Java Base API:

• Java 2D• Audio• Java Media Framework• Java Animation• Java Enterprise• Java Commerce• Java Security

Page 18: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 18

Java Standard Extension API

APIs que permanecerão como Java Standard Extension:

• Java 3D• Vídeo, MIDI• Java Share• Java Telephony• Java Server• Java Management

Page 19: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 19

Java Security API

• É uma estrutura para os desenvolvedores de software que possibilita a inclusão de funcionalidade relacionada à segurança de seus applets e aplicações.

• Compreende: criptografia, assinaturas digitais, codificação e autenticação.

• Inclui um layer abstrato que as aplicações podem invocar. Este layer, por sua vez, invoca classes nos Java Security packages, que implementam a função desejada.

Page 20: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 20

Java Media API (I)

• Compreende as classes multimedia que dão suporte a um amplo espectro de media interativa na WEB e em aplicações tradicionais.

• Inclui: áudio, vídeo, 2D, 3D, animação, telefonia e colaboração.

• Os standards estão sendo definidos em conjunto por: JavaSoft, Adobe, Apple, Intel, Macromedia, Netscape, SGI, e Sun Microsystems.

Page 21: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 21

Java Media API (II)

• Java 2D API

• Java Media Framework API = Video API + Audio API + MIDI API

• Java Animation API

• Java Share API

• Java Telephony API

• Java 3D API

Page 22: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 22

Java Enterprise API (I)

• As classes da Enterprise API conectam aplicações Java a recursos de informação das empresas.

• Compreende três grupos de API:

– JDBC (Java Database Connectivity)

– IDL (Interface Definition Language)

– RMI (Remote Method Invocation)

Page 23: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 23

Java Enterprise API (II)

• JDBC: Interface SQL padrão para acesso a banco de dados.

• Provê interface uniforme para acesso a diferentes bancos de dados.

• Provê uma base comum sobre a qual ferramentas de alto nível e interfaces podem ser construídas.

• Compreende classes para conexão a bancos de dados, comandos SQL, conjuntos resultados, e metadados

• Possibilita aos programas Java formular comandos SQL e processar os resultados.

• ODBC bridges

Page 24: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 24

Java Enterprise API (III)

• IDL (Interface Definition Language):

Forma neutra, relativamente às linguagens, de especificar uma interface entre um objeto e seu cliente quando eles estão em diferentes plataformas.

• Remote Method Invocation (RMI):

Possibilita a invocação de métodos de objetos remotos, isto é, situados em outras máquinas virtuais Java.

(análogo ao RPC)

Page 25: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 25

Java Commerce API

• Possibilita que operações comerciais e financeiras sejam executadas com segurança na WEB.

• O componente inicial desta API é o Java Wallet.

• Java Wallet define e implementa uma estrutura client-side para conduzir operações comerciais em rede.

Page 26: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 26

Java Server API

• Estrutura extensível que possibilita e facilita o desenvolvimento de todo um espectro de servidores Java em ambientes Internet e Intranet.

• Do lado do servidor incorpora classes para: administração do servidor, controle de acesso, controle dinâmico dos recursos do servidor.

• Servlets são objetos independentes da plataforma e a contrapartida dos applets (substituem os scripts CGIs).

Page 27: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 27

Java Management API (I)

• É uma coleção de classes que provê os blocos básicos para um gerenciamento integrado.

• Admin View Module: é uma extensão da AWT (Abstract Window Toolkit). Projetada para criar soluções para gerenciamento integrado (web browser hypertext style of navigation).

• Base Object Interfaces: suporta a criação de objetos que representam recursos e serviços distribuídos que compõem o ambiente computacional da companhia.

Page 28: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 28

Java Management API (II)

• Managed Notification Interfaces: provêm o fundamento sobre o qual serviços mais complexos gerenciados por eventos podem ser construídos.

Provê notificação assíncrona de objetos entre objetos gerenciados e aplicações gerenciadoras, fornecendo as interfaces para implementação de um serviço básico de event-dispatching.

• Managed Container Interfaces : possibilita o agrupamento de objetos gerenciados, de modo que as aplicações gerenciadoras possam realizar ações em um único grupo, ao invés de em várias instâncias de objetos.

Page 29: Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by1 Bibliografia: The Java Platform: A White Paper Douglas Kramer Javasoft http:// java.sun.com A Plataforma.

Oscar Luiz Monteiro de Farias, D.Sc.01/98 Copyright by 29

Java Management API (III)

• Managed Data Interfaces: suportam mapeamento de atributos de extensões para Base Object Interfaces (Interfaces Baseadas em Objetos) para um Banco de Dados Relacional..

• Managed Protocol Interfaces: implementam as características de distribuição e segurança para extensões da Interfaces Baseadas em Objetos (usadas na Java Security API e Java Remote Method Interface-RMI).

• SNMP Interfaces: estendem a Managed Protocol Interfaces para permitir que extensões dos Base Objects contenham informações obtidas de agentes SNMP existentes. Com isto, informações SNMP estarão disponíveis para todos os usuários da Java Management API.