31
Linguagem de Programação JAVA Curso Técnico em Informática Modalida Integrado Instituto Federal do Sul de Minas, Câmpus Pouso Alegre Professora: Michelle Nery

Linguagem de Programação - intranet.ifs.ifsuldeminas.edu.brmichelle.nery/2015... · Linguagem de Programação JAVA - Histórico Em 1991, na Sun Microsystems, em Mountain View -

Embed Size (px)

Citation preview

Linguagem de Programação

JAVACurso Técnico em Informática

Modalida Integrado

Instituto Federal do Sul de Minas, Câmpus Pouso Alegre

Professora: Michelle Nery

Agenda

JAVA

Histórico

Aplicações

Pós e Contras

Características

Conceitos em Gerais

Tipos de Arquivos JAVA

Java

Java é uma linguagem de programação orientada a objetos

desenvolvida pela Sun Microsystems.

Modelada depois de C++, a linguagem Java foi projetada

para ser pequena, simples e portável a todas as

plataformas e sistemas operacionais, tanto o código fonte

como os binários.

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.

Linguagem de Programação JAVA - Conceito

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 expectativa 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.

Linguagem de Programação JAVA -

Histórico

Em 1991, na Sun Microsystems, em Mountain View -

Califórnia, foi iniciado o Green Project, o berço do Java,

uma linguagem de programação orientada a objetos.

O objetivo do projeto não era a criação de uma nova

linguagem de programação, mas antecipar e planejar.

Os idealizadores do projeto acreditavam que em pouco tempo

os aparelhos domésticos e os computadores teriam uma

ligação.

http://www.javasoft.com/people/jag/index.html

Linguagem de Programação JAVA -

Histórico

Primeira Tentativa

A primeira invenção desta equipe foi o *7 (StarSeven).

Um controle remoto com interface touchscreen.

O aparelho tinha um “mascote” que ensinava o usuário a utilizar o

controle.

Este controle foi um antecessor da ideia de interação digital, que esta

presente nos televisores digitais atualmente, infelizmente a tecnologia

da época não estava preparada para tamanho avanço.

Linguagem de Programação JAVA -

Histórico

Características do *7 (StarSeven):

Sugestão Inicial:

Linguagem de Programação C++

Linguagem de Programação JAVA -

Histórico

Dificuldades:

As linguagens de programação existentes não estavam sendo

satisfatórias, inclusive C++.

Linguagem de Programação JAVA -

Histórico

Quais eram as características necessárias então?

Mínimo uso de memória

Baixo custo

Confiabilidade

Compatibilidade

Linguagem de Programação JAVA -

Histórico

Requisitos para a nova linguagem: Pequena Eficiente Facilmente portável

Desenvolvimento de software para diferentes plataformas.

Confiável

Se o software embutido falhar, o fabricante terá que substituir todo oaparelho.

Simples

Donas de casa teriam que se adaptar sem transtornos aos novosaparelhos.

Perspectiva de vida útil longa

Toda vez que novos programas fossem desenvolvidos, os mesmosteriam que ter compatibilidade retroativa.

Linguagem de Programação JAVA -

Histórico

Segunda Tentativa:

James Gosling (Sun), um dos desenvolvedores do controle criou e

nomeou a linguagem de programação de Oak, o nome de uma

árvore para manipular o Star7.

Linguagem denominada de OAK (precursora de Java)

OAK significa CARVALHO em inglês

Linguagem de Programação JAVA -

Histórico

Segunda 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

Linguagem de Programação JAVA -

Histórico

A Sun descobriu que o nome OAK já estava sendo usado.

Decidem chamar esta nova linguagem de

Javahttp://www.javasoft.com/hooked/language-ref.html

Linguagem de Programação JAVA -

Histórico

JAVA ( Just Another Vague Acronym) ?!

NÃO. Inspiração na hora do cafezinho:

Café da Ilha de Java

Linguagem de Programação JAVA -

Histórico

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.

Linguagem de Programação JAVA -

Histórico

1994: Criação do HotJava

Navegador da Web que podia executar applets Java.

Feito totalmente em Java.

Java mostrou-se ideal para ser usada na Internet.

Linguagem de Programação JAVA -

Histórico

1995: Netscape Navigator 2.0 suporta Java, ou entãochamada applets.

1996: Lançamento oficial de Java 1.02

Download gratuito pela Internet (http://www.javasoft.com)

Sun decide disponibilizar um conjunto de ferramentas dedesenvolvimento Java (JDK) “gratuitamente” para acomunidade de software.

1997: Java toma conta da Internet

Netscape, Internet Explorer, HotJava, ...

Em 2002, desenvolvedores do mundo todo preferirão alinguagem Java à C/C++ eVisual Basic.

Linguagem de Programação JAVA -

Aplicações

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.

Linguagem de Programação JAVA - Prós

Prós

Escreva uma vez, execute em qualquer lugar.

Escrever somente para a plataforma JAVA

Suporte nos browsers da Web,TVs, PDAs e celulares.

Segurança

Não consegue ler ou gravar arquivos a partir do disco rígido, etc.

A inexistência de ponteiros evita o acesso direto a memória

Programação centrada em rede

Linguagem de Programação JAVA - Prós

Prós

Programas dinâmicos e extensíveis

Código Java organizado em unidades modulares orientadas por objetochamadas classes.

Cada classe é armazenada em um arquivo separado e somentedescarregadas para o interpretador Java quando necessárias.

O código torna-se uma coleção interativa de componentesindependentes de software.

Internacionalização

Linguagem de programação que suporta Unicode.

Eficiência do programador e tempo de comercialização

Conjunto de APIs (Application Programming Interface) poderoso ebem projetado.

Linguagem de Programação JAVA - Prós

Prós

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.

Linguagem de Programação JAVA -

Contras

Contras

Desempenho

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.

Linguagem de Programação JAVA -

Características

Características Importantes

Portabilidade;

Familiaridade (Similar ao C, C++);

Orientada a objetos.

Linguagem de Programação JAVA –

Ferramentas para Desenvolvimento

A Sun, ao lançar a linguagem Java, pôs à disposiçãogratuitamente o pacote JDK - Java Developer's Kit, queinclui, entre outros: Javac - o compilador de arquivos .java para bytecodes .class;

Java - a JVM específica para a plataforma;

API – bibliotecas de funções;

Appletviewer - visualizador de applets, sem a necessidade deexecução das mesmas num browser

Linguagem de Programação JAVA –

Ferramentas para Desenvolvimento

Applets são pequenos aplicativos escritos em Java que

utilizam-se da JVM (Java Virtual Machine) do browser

existente na máquina cliente para interpretar seu

bytecode.

Linguagem de Programação JAVA –

Ferramentas para Desenvolvimento

Máquina Virtual Java (do inglês Java Virtual Machine - JVM)

é um programa que carrega e executa os aplicativos Java,

convertendo os bytecodes em código executável de

máquina.

Graças à máquina virtual Java, os programas escritos em Java

podem funcionar em qualquer plataforma de hardware e

software que possua uma versão da JVM, tornando assim essas

aplicações independentes da plataforma onde funcionam.

Linguagem de Programação JAVA –

Ferramentas para Desenvolvimento

Application Programming Interface ou simplesmente API

é um conjunto de rotinas e padrões estabelecidos por um

software para utilização de suas funcionalidades.

De modo geral, a API é composta por uma série de

funções acessíveis somente por programação, e que

permitem utilizar características do software menos

evidentes ao usuário tradicional.

Java

A portabilidade é obtida pelo fato da linguagem serinterpretada, ou seja, o compilador gera um códigoindependente de máquina chamado byte-code.

No momento da execução, este byte-code é interpretado poruma máquina virtual instalado na máquina.

Para portar Java para uma arquitetura hadware/SO específica,basta instalar a máquina virtual (interpretador).

O Bytecode é um tipo de linguagem interpretada, que passapelo processo de compilação e, em seguida, é executada poruma máquina virtual, cuja sintaxe é similar a código demáquina.

Tipo de Arquivos JAVA

Lista de Exercícios

1. Por que foi criado a linguagem de programação Java?

2. Pesquise na internet quem foram os criadores da

linguagem de programação Java.

3. O que é JDK? Quais componentes que o integram?

4. Conceitue MáquinaVirtual Java.

5. Cite 5 vantagens e 1 desvantagem de se utilizar o Java.

6. Explique como um aplicativo feito em Java pode

funcionar em qualquer outra arquitetura de Sistema

Operacional. Explique como funciona a compilação e a

execução de um programa desenvolvido em Java.

Bibliografia

Referências Básicas

DEITEL, H; DEITEL, P. Java - Como Programar. 8. ed. Prentice Hall Brasil, 2010.

LUCKOW, D. H. ; MELO,A.A. DE. Programação Java para a Web. Novatec, 2010.

SIERRA, K. ; BATES, B. Use a Cabeça! – Java. 2. ed.Alta Books, 2007.

Referências Complementares

BARNES, D. Programação orientada a objetos com Java. 4. Ed. Prentice Hall Brasil,

2009.

BAUER, C.; KING, G. Java Persistence com Hibernate. Ciência Moderna, 2007.

CORNELL, G.; HORSTMANN, C.S. Core Java, V.1 - Fundamentos. 8. ed.

Prentice Hall Brasil, 2009.

HORSTMANN, C.; GEARY, D. M. Core Java Server Faces (em português). Starlin

Alta Consult, 2007.

ZIVIANI, N. Projeto de algoritmos com implementações em Java e C ++.

Thomson Pioneira, 2006.