Nosso Primeiro Programa Javaariane/ach2001/ACH2001-Aula05... · 2009. 3. 14. · Java): Eclipse...
Transcript of Nosso Primeiro Programa Javaariane/ach2001/ACH2001-Aula05... · 2009. 3. 14. · Java): Eclipse...
-
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