Buscar

Aula 01 - Historico Java

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 3, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 6, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 9, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Prévia do material em texto

JAVA 
Evolução do Java 
Prof. M. Sc. Edgar Gurgel 
Linguagem Java - Conceito 
Java é o nome da linguagem de programação usada para 
desenvolver programas. Java é multiplataforma. Isto 
quer dizer que não é necessário usar um tipo especifico 
de computador, não importa se você usa Windows, Mac, 
ou Unix. Na internet encontramos pequenas aplicações 
em Java(Applets), que são carregadas e executadas no 
browser do usuário. Esta característica causa muita 
espectativa em relação ao Java, pois espera-se que no 
futuro não precisaremos mais instalar aplicativos no 
computador. Basta estar conectado à Internet e acessar 
o programa desejado. 
POOII 2 
Linguagem Java - Histórico 
 
A linguagem JAVA foi projetada e implementada 
por um pequeno grupo de pessoas(Green), 
coordenado por James Gosling, na Sun 
Microsystems em Mountain View, Califórnia, em 
1991. 
 
http://www.javasoft.com/people/jag/index.html 
POOII 3 
Linguagem Java - Histórico 
Equipe trabalhava no projeto de software para 
produtos eletrônicos de consumo (software 
para eletrodomésticos) 
Nova geração de microcomputadores portáteis, TVs 
interativas, lâmpadas interativas, etc. 
Todos interconectados e com mesma interface. 
 
PROJETO GREEN 
POOII 4 
Linguagem Java - Histórico 
1a TENTATIVA 
Idéia de um protótipo de dispositivo para comunicação, 
tipo controle remoto, para o controle de aparelhos 
eletrodomésticos. 
Sugestão inicial: C++ 
Orientada a objetos. 
Extremamente popular. 
Tentativa de desenvolver o sistema operacional Star7 
em C++. 
POOII 5 
Linguagem Java - Histórico 
Problema com LP´s existentes 
 
 C++ (e outras linguagens) não estava 
d e s e m p e n h a n d o a t a r e f a 
satisfatoriamente. 
POOII 6 
Linguagem Java - Histórico 
James Gosling (Sun) e equipe projetou uma nova 
linguagem para manipular o Star7. 
Linguagem denominada de OAK (precursora de Java) 
OAK significa CARVALHO em inglês 
2a TENTATIVA 
POOII 7 
Linguagem Java - Histórico 
2a TENTATIVA 
PROJETO GREEN 
Propósito de testar um novo tipo de interface do usuário para 
controlar um ambiente doméstico (casa inteligente). 
Videocassete,TV, luzes,telefone,etc. 
*7 (Star Seven) 
Computador experimental portátil, tipo controle remoto, com 
interface gráfica e interativa. 
Nova linguagem de programação: OAK 
POOII 8 
Linguagem Java - Histórico 
2a TENTATIVA 
PROJETO GREEN 
*7 (Star Seven) 
DUKE – figura 
animada do 
protótipo *7 
*7 utilizava uma interface gráfica bastante 
atraente para controlar os 
eletrodomésticos. 
POOII 9 
Linguagem Java - Histórico 
Protótipo do Gream Team 
 
Dispositivo portátil, sem teclado, botões e 
com uma pequena tela. 
Controle se dava por toques na tela. 
Interface gráfica - uma casa animada com 
um guia de turismo, o mascote DUKE. 
POOII 10 
Linguagem Java - Histórico 
A Sun descobriu que o nome Oak já estava sendo usado. 
Decidem chamar esta nova linguagem de 
 Java 
http://www.javasoft.com/hooked/language-ref.html 
POOII 11 
Por que o nome Java? 
JAVA ( Just Another Vague Acronym) ?! 
 
NÃO. Inspiração na hora do cafezinho: 
 
 Café da Ilha de Java 
POOII 12 
Por que o nome Java? 
Java é o nome de uma ilha do Pacífico, onde se 
produz uma certa variedade de café homônimo. 
A inspiração bateu à equipe de desenvolvimento ao 
saborear esse café em uma lanchonete local. 
Era extremamente apreciado por profissionais da área 
de software (ainda o é). 
POOII 13 
Linguagem Java - Histórico 
1994: Criação do HotJava 
Feito totalmente em Java. 
Navegador da Web que podia efetuar Downloads e 
executar applets Java. 
Java mostrou-se ideal para ser usada na 
Internet. 
POOII Prof. Edgar Gurgel 14 
Linguagem Java - Histórico 
1995: Netscape Navigator 2.0 suporta Java, que incorpora as 
capacidades de efetuar o download e realizar a execução de pequenas 
aplicações Java, então chamadas de applets. 
A Sun amplia esforços para o desenvolvimento de Java. 
Criação da JavaSoft. 
1996: Lançamento oficial de Java 1.02 
Download gratuito pela Internet (http://www.javasoft.com) 
Sun decide disponibil izar um conjunto de ferramentas de 
desenvolvimento Java (JDK) “gratuitamente” para a comunidade de 
software. 
1997: Java toma conta da Internet 
Netscape, Internet Explorer, HotJava, ... 
POOII 15 
Linguagem Java - Histórico 
Em breve, desenvolvedores do mundo todo preferirão a linguagem 
Java à C/C++ e Visual Basic. Quem confirma esse dado é a Evans 
Data Corporation, instituto norte-americano de pesquisas de mercado. 
Janel Garvin, vice-presidente da empresa, afirma que mais da metade 
da população dos Estados Unidos usa Java e calcula-se que esse 
número cresça mais 10% até o próximo ano. 
A pesquisa do Evans Data Corporation também mostra que o uso da 
tecnologia tem se fortalecido fora da América do Norte, onde 
aproximadamente 60% dos desenvolvedores a utilizam para suas 
programações. 
Dados da Sun Microsystems do Brasil apontam que a procura por 
cursos de Java cresceu 674%, no seu lançamento, com um aumento 
de 30% para os cursos voltados a pessoas com pouca ou nenhuma 
experiência em programação e 50% para os cursos básicos de Java. 
POOII 16 
Linguagem Java - Histórico 
Utilizada em empresas como: 
IBM, Kaiser NASA, ESPN, Museu de Arte Moderna 
de NY, diversos bancos, etc. 
Mais de 2000 livros escritos. 
Contagem recente da Java World Magazine. 
POOII 17 
Quem está usando Java? 
Grande disseminação na Europa e EUA. 
No Brasil, grandes empresas já adotam JAVA, 
principalmente em aplicações de Comércio 
Eletrônico. 
POOII 18 
Quem está usando Java? 
Serviços financeiros 
Home Banking, comércio seguro 
Marketing e propaganda 
Loja interativa, animações, multimídia 
Diversão e entretenimento 
Jogos multi-usuário, chat 
Educação 
Ensino à distância, simulações interativas 
Outros 
Astronomia (telescópios orbitais). 
Telefonia. 
Aparelhos eletroeletrônicos. 
POOII 19 
Quem está usando Java? 
British Telecom (empresa de telefonia inglesa) - ServiceView; 
MountSinai (hospital de Nova York) emite certificados de óbitos 
usando JAVA; 
VISA Internacional irá substituir as tarjas magnéticas de seus 
cartões por chips com tecnologia JAVA; 
American Express (serviços financeiros); 
CSX (maior companhia ferroviária dos EUA) montou rede JAVA; 
POOII 20 
Quem está usando Java? 
J.P. Morgan (banco de investimentos); 
 
Hong Kong Telecom (operações de rede de TV interativa); 
Fannie Mac (maior empresa americana de hipotecas); 
Banco Itaú usando JAVA em sua Intranet; 
Banco do Brasil anunciou migração para JAVA; 
UNIVERSIDADES (no Brasil: UNB, UNICAMP, UFPE, entre 
outras). 
POOII 21 
Por que Java? 
Vantagens 
Escreva uma vez, execute em qualquer lugar 
Escrever somente para a plataforma JAVA 
Suporte nos browsers da Web, TVs, PDAs e celulares. 
Segurança 
Permite que usuários descarreguem código não confiável em uma 
rede e o executem em um ambiente seguro: 
  a inexistência de ponteiros evita o acesso direto a memória 
Programação centrada em rede 
Slogan corporativo da Sun: “ A rede é o computador” 
Suporte a arquitetura cliente/servidor e multicamadas. 
POOII 22 
Por que Java? 
Vantagens 
Programas dinâmicos e extensíveis 
Código Java organizado em unidades modulares orientadas por objeto 
chamadas classes. 
Cada classe é armazenada em um arquivo separado e somente 
descarregadas para o interpretador Java quando necessárias. 
O códigotorna-se uma coleção interativa de componentes independentes 
de software. 
Internacionalização 
Única linguagem de programação que suporta Unicode. 
Eficiência do programador e tempo de comercialização 
Conjunto de APIs (Application Programming Interface) poderoso e bem 
projetado. 
POOII 23 
Por que Java? 
Torna as páginas da Web mais interessantes 
Som, vídeo, animações, relógios, contadores 
Nova plataforma 
Pode-se criar uma grande variedade de aplicações. 
planilhas eletrônicas, processadores de texto, jogos, salas 
de bate-papo, programas financeiros, gerência de recursos 
humanos, etc. 
POOII 24 
Por que Java? 
Desvantagens 
Desempenho 
Eficiência (código interpretado: bytecode) 
Necessidade de uma máquina virtual 
Por ser interpretada, torna-se mais lenta, não podendo 
ser comparada à velocidade de execução de código 
nativo. 
Garbage Collection 
A rotina para manter o controle dos objetos que estão 
sendo referenciados durante a execução, exige mais do 
processador hospedeiro. 
POOII 25 
Por que Java? 
Características Importantes 
Portabilidade (Independente de plataforma – Os programas Java 
são compilados para uma forma intermediaria de código denominada 
Bytecodes) 
Familiaridade (Similar ao C, C++) 
Sem Ponteiros (O Java não permite a manipulação direta de 
endereços na memória nem exige que os objetos criados sejam 
destruídos livrando o programador de uma tarefa complexa) 
POOII 26 
Por que Java? 
Características Importantes 
Distribuição (No caso dos applets, os bytecodes da Java são 
tranferidos em tempo de execução, então o usuário sempre estará 
utilizando o código mais recente. Isto resolve todo tipo de pesadelo de 
distribuição que tradicionalmente as empresas tem de enfrentar) 
Segurança (Java foi planejada para verificar e executar programas 
binários em um ambiente controlado. Isto protege o usuário final de 
vírus e violações de segurança. Toda vez que um applet Java é 
transferido para o browser do usuário recebe um verificação de seu 
byte-code. Isto significa que se o tamanho do pacote de código for 
alterado pelo caminho, o programa será abortado. Esta checagem 
protege contra Cavalos de Tróia e outras viroses que forem 
adicionadas aos Java bytecodes.) 
Orientada a objetos (baseada no modelo de Smalltalk e 
Simula67) 
POOII 27 
Conceitos Gerais 
Carga Dinâmica de Código 
Programas não monolíticos: cada classe é armazenada 
independentemente e pode ser carregada somente quando for 
utilizada. 
Concorrência 
Permite múltiplas linhas de execução (threads) num mesmo 
programa e oferece primitivas para sincronizá-las. 
Pilha de Execução 
Idêntica a outras OOPLs (cada thread numa pilha própria) 
Coleta Automática de Lixo 
Desalocação de memória (objetos) automática. 
POOII 28 
Conceitos Gerais 
Tratamento de Exceções 
Java institui um método de detecção de erros conhecido com “tratamento de 
exceções”. 
objetivo → tratar erros de software ou hardware 
como → separando o código de tratamento de erros do código normal da 
aplicação 
 
Modelo de Objetos 
Incorpora todos os principais conceitos 
Recursos de Rede 
Extensa biblioteca de rotinas que facilitam a cooperação com protocolos TCP/
IP, como HTTP e FTP. 
Maior facilidade de criação de conexões de rede do que C ou C++. 
Aplicações Java podem abrir e acessar objetos na rede através das URLs. 
POOII 29 
A pilha Java 
A concepção da Máquina Virtual Java é fortemente 
orientada a pilhas. As principais funções da pilha 
Java são: 
Armazenar parâmetros para os bytecodes e guardar os 
resultados decorrentes da execução dos mesmos; 
Passar parâmetros para os métodos e armazenar os 
valores retornados pelos mesmos; 
Manter o estado dos métodos que foram invocados. 
POOII 30

Outros materiais