Programação extrema em linguagem Java - módulo 2

Reflexão

O que diferencia programas que utilizam uma interface Web daqueles que utilizam uma interface WIMP?

Tarefas

Nosso primeiro desafio é implementar um programa Java com interface Web capaz de auxiliar um internauta a calcular seu índice de massa corpórea.

  1. Comece pesquisando na Internet diferentes sites que oferecem a funcionalidade de cálculo do índice de massa corpórea. Procure compreender o que é, como é calculado e como seu valor deve ser interpretado pelo internauta.
  2. O facilitador dará as instruções necessárias para instalar e configurar o ambiente Eclipse que irá permitir o desenvolvimento do programa Java capaz de calcular o índice de massa corpórea.
  3. Crie um projeto Web no Eclipse a partir do arquétipo do Wicket, executando os seguintes passos:
    • Clique com o botão direito em algum espaço vazio do Package Explorer e, em seguida, clique New/Project...
    • Duplo-clique na opção Maven
    • Duplo-clique na opção Maven project
    • Clique Next
    • No campo Filter, digite "wicket" e aguarde até aparecer algum artefato na lista logo abaixo
    • Selecione o artefato denominado "wicket-archetype-quickstart" e clique Next
    • No campo Group Id, digite "cursoxp"
    • No campo Artifact Id, digite "imc"
    • No campo Package, digite "cursoxp.imc"
    • Clique Finish e aguarde até o projeto imc ser criado e aparecer no package explorer
  4. Execute o projeto Web criado no Eclipse a partir do navegador Web local:
    • Duplo-clique sobre o projeto imc, visível no Package Explorer
    • Duplo-clique na pasta src/test/java
    • Duplo-clique no pacote cursoxp.imc
    • Clique com o botão direito sobre o arquivo Start.java e, em seguida, clique Run As/Java Application
    • Abra no navegador Web a página com o seguinte endereço: http://localhost:8080/
    • Na visão Console, clique no botão vermelho Terminate para encerrar o site Web local
  5. Edite o conteúdo do arquivo Homepage.html, localizado na pasta src/main/java, sob o pacote cursoxp.imc, conforme segue:
              
    <html xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.3-strict.dtd" >
        <head>
            <title>C&aacute;lculo de IMC</title>
        </head>
        <body>
            <h1>C&aacute;lculo de IMC</h1>
            <p>Bem-vindo &agrave; p&aacute;gina que ir&aacute; te mostrar
               seu &iacute;ndice de massa corp&oacute;rea.
            </p>
            <div wicket:id="message"></div>
        </body>
    </html>
              
            
  6. Reexecute o projeto Web criado no Eclipse a partir do navegador Web local e veja o que mudou na página apresentada.
  7. Crie uma classe de teste de unidade chamada TestFichaBiometrica, sob o pacote cursoxp.imc:
    • Expandir nó do projeto imc, visível no Package Explorer
    • Expandir nó da pasta src/test/java
    • Expandir nó do pacote cursoxp.imc
    • Clique com o botão direito sobre o pacote cursoxp.imc e, em seguida, clique New/Junit Test Case
    • Certifique-se que o campo 'Source folder' tenha a seguinte informação: imc/src/test/java
    • Certifique-se que o campo 'Package' tenha a seguinte informação: cursoxp.imc
    • Certifique-se que o campo 'Name' tenha a seguinte informação: TestFichaBiometrica
    • Clique Finish e edite o conteúdo do arquivo criado, conforme segue:
                    
      package cursoxp.imc;
      
      import junit.framework.Assert;
      import junit.framework.TestCase;
      
      public class TestFichaBiometrica extends TestCase {
      	public void testCalcularIMCComDadosValidos() {
      		FichaBiometrica ficha = new FichaBiometrica();
      		ficha.setMassa(60);
      		ficha.setAltura(1.60);
      		Assert.assertEquals(23.4, ficha.calcularIMC(), 0.1);
      
      		ficha.setMassa(67);
      		ficha.setAltura(1.70);
      		Assert.assertEquals(23.2, ficha.calcularIMC(), 0.1);
      	}
      }
                    
                  
    • Crie uma classe Java chamada FichaBiometrica, sob o pacote cursoxp.imc:
      • Expandir nó do projeto imc, visível no Package Explorer
      • Expandir nó da pasta src/main/java
      • Expandir nó do pacote cursoxp.imc
      • Clique com o botão direito sobre o pacote cursoxp.imc e, em seguida, clique New/Class
      • Certifique-se que o campo 'Source folder' tenha a seguinte informação: imc/src/main/java
      • Certifique-se que o campo 'Package' tenha a seguinte informação: cursoxp.imc
      • Certifique-se que o campo 'Name' tenha a seguinte informação: FichaBiometrica
      • Clique Finish e edite o conteúdo do arquivo criado, conforme segue:
                      
        package cursoxp.imc;
        
        public class FichaBiometrica {
        	private double massa;
        	private double altura;
        
        	public double calcularIMC() {
        		return getMassa()/(getAltura()*getAltura());
        	}
        
        	public double getMassa() {
        		return massa;
        	}
        
        	public void setMassa(double massa) {
        		this.massa = massa;
        	}
        
        	public double getAltura() {
        		return altura;
        	}
        
        	public void setAltura(double altura) {
        		this.altura = altura;
        	}
        }
                      
                    
    • Execute os testes de unidade:
      • Clique com o botão direito sobre o projeto imc, visível no Package Explorer, e, em seguida, clique Run As/JUnit Test
      • Verifique se a barra de testes está verde, indicando que todos os testes tiveram sucesso