Formação Java

Curso Laboratório Java com Testes, JSF e Design Patterns

  • Curso com um laboratório prático de boas práticas;
  • Testes unitários, TDD, refatorações e práticas ágeis;
  • Aplicações Web com Java Server Faces (JSF) e PrimeFaces;
  • Cenários reais de uso de design patterns;
  • Acesso a Web Services externos;
  • Uso de XML com XStream;
  • Não basta aprender a linguagem, o mercado exige as boas práticas.

Sobre o curso FJ-22

Esse é um laboratório de desenvolvimento em Java focado em boas práticas de programação. Durante o curso, desenvolvemos uma aplicação de análise da bolsa de valores, que busca o histórico de um Web Service e exibe gráficos de indicadores e cotações. Nesse contexto, abordamos testes unitários com JUnit, lemos XML com XStream e consumimos um Web Service. Tudo isso utilizando como interface JSF 2 e PrimeFaces.

Há bastante foco nas boas práticas como refatorações, design patterns, Test Driven Development (TDD) e XP, além de recursos avançados da linguagem Java como reflection.

Veja também a ementa detalhada do curso.

Pré-requisitos

Ou equivalente com conhecimento de Orientação a Objetos, Java SE básico, Web, JSP e Servlets.

20horas aula

A opinião de quem fez

Foi uma experiencia muito boa, com certeza contribuiu muito com a minha vida profissional. A metodologia e a didática são imcomparáveis... Muito bom mesmo.

Renata Magalhães Rêgo, Manaus - AM

Melhor escola em que eu ja estudei.

Rafael Nicoletti, BK Consultoria e Servicos Ltda

Gostei bastante do curso em geral, como falei na primeira avaliaçao do FJ-11 os professores possuem uma otima didatica. Sem falar que a instituição tem um otimo reconhecimento no mercado.

Vitor Menezes

Próximas turmas

DataPeríodoCidadeComentário
04/10 a 18/10Sábado (9h às 17h)Rio de Janeiro Inscrições abertas.
06/10 a 10/10Noturno (19h às 23h)São Paulo Turma com vagas!
13/10 a 17/10Noturno (18h às 22h)Rio de Janeiro Inscrições abertas.
18/10 a 01/11Sábado (9h às 17h)São Paulo Turma com poucas vagas
20/10 a 24/10Manhã (9h às 13h30)Brasília
03/11 a 07/11Noturno (19h às 23h)Brasília
03/11 a 07/11Noturno (19h às 23h)São Paulo Turma com vagas
06/12 a 20/12Sábado (9h às 17h)Brasília
13/12 a 10/01Sábado (9h às 17h)Rio de Janeiro Inscrições abertas.
15/12 a 19/12Noturno (18h às 22h)Rio de Janeiro Inscrições abertas.
19/01 a 22/01Integral (9h às 17h)Rio de Janeiro Inscrições abertas.
14/03 a 28/03Sábado (9h às 17h)Rio de Janeiro Inscrições abertas.

Não achou a turma ideal pra você? Entre em contato e consulte outras turmas e horários.

Fale com a gente.

Dúvidas, reservas ou um papo com um instrutor?

Conteúdo detalhado

Tornando-se um desenvolvedor pragmático

  1. O que é realmente importante?
  2. A importância dos exercícios
  3. Tirando dúvidas e referências
  4. Para onde ir depois?

O modelo da bolsa de valores, datas e objetos imutáveis

  1. A bolsa de valores
  2. Candlesticks: O Japão e o arroz
  3. O projeto Tail
  4. O projeto Argentum: modelando o sistema
  5. Trabalhando com dinheiro
  6. Palavra chave final
  7. Imutabilidade de objetos
  8. Trabalhando com datas: Date e Calendar
  9. Exercícios: o modelo do Argentum
  10. Resumo diário das Negociações
  11. Exercícios: fábrica de Candlestick
  12. Exercícios opcionais

Testes Automatizados

  1. Nosso código está funcionando corretamente?
  2. Exercícios: testando nosso modelo sem frameworks
  3. Definindo melhor o sistema e descobrindo mais bugs
  4. Testes de Unidade
  5. JUnit
  6. Anotações
  7. JUnit4, convenções e anotação
  8. Exercícios: migrando os testes do main para JUnit
  9. Vale a pena testar classes de modelo?
  10. Exercícios: novos testes
  11. Para saber mais: Import Estático
  12. Mais exercícios opcionais
  13. Discussão em aula: testes são importantes?

Trabalhando com XML

  1. Os dados da bolsa de valores
  2. O formato XML
  3. Lendo XML com Java de maneira difícil, o SAX
  4. XStream
  5. Exercícios: Lendo o XML
  6. Discussão em aula: Onde usar XML e o abuso do mesmo

Test Driven Design - TDD

  1. Separando as candles
  2. Vantagens do TDD
  3. Exercícios: Identificando negociações do mesmo dia
  4. Exercícios: Separando os candles
  5. Exercícios opcionais

Acessando um Web Service

  1. Integração entre sistemas
  2. Consumindo dados de um Web Service
  3. Criando o cliente Java
  4. Exercícios: Nosso cliente Web Service
  5. Discussão em aula: Como testar o cliente do web service?

Introdução ao JSF e Primefaces

  1. Desenvolvimento desktop ou web?
  2. Características do JSF
  3. Exercícios: Instalando o Tomcat e criando o projeto
  4. A primeira página com JSF
  5. Interagindo com o modelo: Managed Beans
  6. Recebendo informações do usuário
  7. Exercícios: Os primeiros componentes JSF
  8. A lista de negociações
  9. Formatação de Data com JSF
  10. Exercícios: p:dataTable para listar as Negociações do Web Service
  11. Para saber mais: paginação e ordenação
  12. Exercício opcional: adicione paginação e ordenação à tabela

Refatoração: os Indicadores da bolsa

  1. Análise Técnica da bolsa de valores
  2. Indicadores Técnicos
  3. As médias móveis
  4. Exercícios: criando indicadores
  5. Refatoração
  6. Exercícios: Primeiras refatorações
  7. Refatorações maiores
  8. Discussão em aula: quando refatorar?

Gráficos interativos com Primefaces

  1. Por que usar gráficos?
  2. Gráficos com o Primefaces
  3. Propriedades para personalizar o gráfico
  4. Definição do modelo do gráfico
  5. Isolando a API do Primefaces: baixo acoplamento
  6. Para saber mais: Design Patterns Factory Method e Builder
  7. Exercícios: Gráficos com Primefaces

Aplicando Padrões de projeto

  1. Nossos indicadores e o design pattern Strategy
  2. Exercícios: refatorando para uma interface e usando bem os testes
  3. Exercícios opcionais
  4. Indicadores mais elaborados e o Design Pattern Decorator
  5. Exercícios: Indicadores mais espertos e o Design Pattern Decorator

A API de Reflection

  1. Escolhendo qual gráfico plotar
  2. Exercícios: permitindo que o usuário escolha o gráfico
  3. Montando os indicadores dinamicamente
  4. Introdução a Reflection
  5. Por que reflection?
  6. Constructor, Field e Method
  7. Melhorando nosso ArgentumBean
  8. Exercícios: indicadores em tempo de execução
  9. Melhorando a orientação a objetos

Apêndice Testes de interface com Selenium

  1. Introdução ao teste de aceitação
  2. Como funciona?
  3. Trabalhando com diversos testes de aceitação
  4. Para saber mais: Configurando o Selenium em casa
  5. Exercícios: Teste com Selenium


* Os apêndices listados são conteúdos adicionais que não fazem parte do curso regular.