Nosso Primeiro Programa Javaariane/ach2001/ACH2001-Aula05... · 2009. 3. 14. · Java): Eclipse...

41
SISTEMAS DE INFORMAÇÃO 1 Professoras: Ariane Machado Lima Fátima L. S. Nunes Java – linguagem, jvm, jdk, jre, ide Nosso Primeiro Programa Java

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