Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
SISTEMAS DEINFORMAÇÃO
1
Professoras:Ariane Machado Lima Fátima L. S. Nunes
Java – linguagem, jvm, jdk, jre, ide
Nosso PrimeiroPrograma Java
SISTEMAS DEINFORMAÇÃO
2
Lembrando os objetivos desta disciplina
Aprender a programar. Para isso precisamos escolher um paradigma...Paradigma de Programação Orientada a Objetos
(POO)• usando a linguagem Java
SISTEMAS DEINFORMAÇÃO
3
Java
Java é uma linguagemPOOhíbrido de compilada e interpretada
Para se usar uma linguagem é necessário ter seu compilador e/ou seu interpretador No caso de Java, ambos
SISTEMAS DEINFORMAÇÃO
4
Ambiente de Desenvolvimento e Ambiente de Execução
Análise sintática e “compilação”
Portabilidade
SISTEMAS DEINFORMAÇÃO
5
Ambiente de Execução O que é necessário?
SISTEMAS DEINFORMAÇÃO
6
Ambiente de Execução O que é necessário?
Máquina Virtual Java
JRE – Java Runtime EnvironmentVersão atual: 6
SISTEMAS DEINFORMAÇÃO
7
JDK – Java Development Kit Compilador java (javac): recebe um arquivo fonte
nomedoarquivo.java (programa java) e gera um arquivo de bytecodes (nomedoarquivo.class)
JVM – Máquina Virtual Java: capaz de interpretar os bytecodes
APIs - Application Programming Interfaces: bibliotecas de códigos prontos, pré-definidos, que auxiliam muuuuito a programação
pode ter outros componentes...
SISTEMAS DEINFORMAÇÃO
8
Diferentes JDKs JDK SE (Standard Edition): kit básico para todas as
aplicações (com exceção de micro edition) JVM (jre), APIs básicas, compilador
JDK EE (Enterprise Edition): APIs e outros “acessórios” para aplicações servidor
JDK ME (Micro Edition): APIs e “acessórios” para aplicações em dispositivos eletrônicos como celulares, palms, chaves, etc.
SISTEMAS DEINFORMAÇÃO
9
Vamos usar só o SE !!! JDK SE (Standard Edition): kit básico para todas as
aplicações (com exceção de micro edition) JVM (jre), APIs básicas, compilador
JDK EE (Enterprise Edition): APIs e outros “acessórios” para aplicações servidor
JDK ME (Micro Edition): APIs e “acessórios” para aplicações em dispositivos eletrônicos como celulares, palms, chaves, etc.
SISTEMAS DEINFORMAÇÃO
10
Ambiente integrado (gráfico) de desenvolvimento
IDE – Integrated Development Enviroment
Ambiente gráfico que permiteescrever código (editor) compilar, ligar rodardepurarmuitas outras coisas
(dependendo do IDE)
SISTEMAS DEINFORMAÇÃO
11
Ambiente integrado (gráfico) de desenvolvimento
Objetivo: agilizar o desenvolvimento
Não confundir com o JDK (KIT x ambiente de desenvolvimento)
SISTEMAS DEINFORMAÇÃO
12
Exemplos (que suportam Java):EclipseBlueJ JCreatorNetBeansDrJava
Ambiente integrado (gráfico) de desenvolvimento
SISTEMAS DEINFORMAÇÃO
13
Exemplos (que suportam Java):EclipseBlueJ JCreatorNetBeansDrJava
Ambiente integrado (gráfico) de desenvolvimento
SISTEMAS DEINFORMAÇÃO
14
Ambiente de desenvolvimento (IDE) Java Leve Desenhado para estudantes (interface intuitiva) Funcionalidades para usuários avançados Suporta Java 1.4, 5 e 6 Roda em Linux, Windows e Mac OS http://drjava.org Apêndice A do livro texto
http://drjava.org/
SISTEMAS DEINFORMAÇÃO
15
SISTEMAS DEINFORMAÇÃO
16
Nosso PrimeiroPrograma Java
SISTEMAS DEINFORMAÇÃO
17
Teatro de Objetos
SISTEMAS DEINFORMAÇÃO
18
Teatro de Objetos
Peça Papéis Atores Mensagens compreendidas e seus scripts Envio de mensagem
SISTEMAS DEINFORMAÇÃO
19
Teatro de Objetos e POO
SISTEMAS DEINFORMAÇÃO
20
Teatro de Objetos e POO Os cartões de identificação definem papéis
Os scripts definem o comportamento dos atores no decorrer da peça
Em POO podemos fazer o mesmo... … vejamos em Java
SISTEMAS DEINFORMAÇÃO
21
Exemplo: Técnico - Papel
SISTEMAS DEINFORMAÇÃO
22
Exemplo: Técnico - Script
SISTEMAS DEINFORMAÇÃO
23
class Tecnico {
//atributos
//métodos
}
SISTEMAS DEINFORMAÇÃO
24
class Tecnico {
//atributos time;
//métodos
}
SISTEMAS DEINFORMAÇÃO
25
class Tecnico {
//atributos time;
//métodos
suaVez { // Escolha um de seus jogadores para efetuar a cobrança... }
repitaCobranca { // Envie a mensagem suaVez para o jogador que acabou de efetuar a
cobrança }
venceuOTime (nomeDoTime) { // Se nomeDoTime é igual ao atributo time no seu cartão de
identificação ... }
}
SISTEMAS DEINFORMAÇÃO
26
class Tecnico {
//atributos time;
//métodos
suaVez { // Escolha um de seus jogadores para efetuar a cobrança... }
repitaCobranca { // Envie a mensagem suaVez para o jogador que acabou de efetuar a
cobrança }
venceuOTime (nomeDoTime) { // Se nomeDoTime é igual ao atributo time no seu cartão de
identificação ... }
}
Palavra reservada
SISTEMAS DEINFORMAÇÃO
27
class Tecnico {
//atributos time;
//métodos
suaVez { // Escolha um de seus jogadores para efetuar a cobrança... }
repitaCobranca { // Envie a mensagem suaVez para o jogador que acabou de efetuar a
cobrança }
venceuOTime (nomeDoTime) { // Se nomeDoTime é igual ao atributo time no seu cartão de
identificação ... }
}
Palavra reservada
Tipo
SISTEMAS DEINFORMAÇÃO
28
class Tecnico {
//atributos time;
//métodos
suaVez { // Escolha um de seus jogadores para efetuar a cobrança... }
repitaCobrança { // Envie a mensagem suaVez para o jogador que acabou de efetuar a
cobrança }
venceuOTime (nomeDoTime) { // Se nomeDoTime é igual ao atributo time no seu cartão de
identificação ... }
}
Palavra reservada
Tipo
Comentários
SISTEMAS DEINFORMAÇÃO
29
Conversor de Celsius para Fahrenheit
Fórmula:
Na “linguagem” de computadores/calculadoras:
F = 9*C/5 + 32
Vamos escrever um programa Java para isso
SISTEMAS DEINFORMAÇÃO
30
// Esta classe converte o valor de 40 graus Celsius para Fahrenheit
class Conversor{ int celsiusParaFahrenheit()
{ return 9 * 40 / 5 + 32;
}
}
SISTEMAS DEINFORMAÇÃO
31
// Esta classe converte o valor de 40 graus Celsius para Fahrenheit
class Conversor{ int celsiusParaFahrenheit()
{ return 9 * 40 / 5 + 32;
}
}
TiposTipo Abstrato de dado
Tipo Primitivo
SISTEMAS DEINFORMAÇÃO
32
// Esta classe converte o valor de 40 graus Celsius para Fahrenheit
class Conversor{ int celsiusParaFahrenheit()
{ return 9 * 40 / 5 + 32;
}
}
TiposTipo Abstrato de dado
Tipo Primitivo
Palavra reservada
SISTEMAS DEINFORMAÇÃO
33
// Esta classe converte o valor de 40 graus Celsius para Fahrenheit
class Conversor{ int celsiusParaFahrenheit()
{ return 9 * 40 / 5 + 32;
}
}
TiposTipo Abstrato de dado
Tipo Primitivo
Palavra reservada
Indentação
SISTEMAS DEINFORMAÇÃO
34
// Esta classe converte o valor de 40 graus Celsius para Fahrenheit
class Conversor{ int celsiusParaFahrenheit()
{ return 9 * 40 / 5 + 32;
}
}
TiposTipo Abstrato de dado
Tipo Primitivo
Palavra reservada
Indentação
BONS NOMES!!!!
SISTEMAS DEINFORMAÇÃO
35
// Esta classe converte o valor de 40 graus Celsius para Fahrenheit
class Conversor{ int celsiusParaFahrenheit()
{ return 9 * 40 / 5 + 32;
}
}Conversor conv1 = new Conversor();conv1.celsiusParaFahrenheit()
SISTEMAS DEINFORMAÇÃO
36
DrJava
SISTEMAS DEINFORMAÇÃO
37
Algum problema?
SISTEMAS DEINFORMAÇÃO
38
Algum problema?
Só converte o valor de 40 graus Celsius!!!!
Queremos parametrizar o valor de entrada
SISTEMAS DEINFORMAÇÃO
39
// Esta classe converte QUALQUER valor de graus Celsius para Fahrenheit
class ConversorParametrizado{ int celsiusParaFahrenheit ( int c )
{ return 9 * c / 5 + 32;
}
}
SISTEMAS DEINFORMAÇÃO
40
// Esta classe converte QUALQUER valor de graus Celsius para Fahrenheit
class ConversorParametrizado{ int celsiusParaFahrenheit ( int c )
{ return 9 * c / 5 + 32;
}
}
ConversorParametrizado conv2 = new ConversorParametrizado();conv2.celsiusParaFahrenheit(100)
SISTEMAS DEINFORMAÇÃO
41
DrJava
Slide 1Slide 2Slide 3Slide 4Slide 5Slide 6Slide 7Slide 8Slide 9Slide 10Slide 11Slide 12Slide 13Slide 14Slide 15Slide 16Slide 17Slide 18Slide 19Slide 20Slide 21Slide 22Slide 23Slide 24Slide 25Slide 26Slide 27Slide 28Slide 29Slide 30Slide 31Slide 32Slide 33Slide 34Slide 35Slide 36Slide 37Slide 38Slide 39Slide 40Slide 41