Download Projeto De Sistemas Orientados a Objeto

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
A Plataforma JAVA
Bibliografia:
• The Java Platform: A White Paper
Douglas Kramer
Javasoft
http:// java.sun.com
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
1
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”
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
2
Partes Básicas da Plataforma JAVA
• Java Virtual Machine
• Java Application Programming
Interface (Java API)
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
3
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...
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
4
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.
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
5
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...
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
6
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).
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
7
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
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
8
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).
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
9
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)
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
10
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)
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
11
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.
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
12
Java Platform
Applets
Applications
• Applets
andand
Applications
Java Base API
Java Standard Extension API
Java Base Classes
Java Standard Extension
Classes
Java Virtual Machine
Porting Interface
Adapter
Adapter
Adapter
Java
browser
OS
OS
OS
HW
HW
HW
HW
browser
Desktop OS
OS
NW
Smaller OS
Java OS
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
13
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.
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
14
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)
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
15
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.
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
16
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
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
17
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
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
18
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.
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
19
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.
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
20
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
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
21
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)
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
22
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
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
23
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)
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
24
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.
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
25
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).
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
26
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.
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
27
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.
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
28
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.
01/98 Copyright by Oscar Luiz Monteiro de Farias, D.Sc.
29