Curso Java – Desenvolvedor Funcional com Java 8

java-lambda-expressionObjetivos

Objetivo deste curso é levar o participante a um nível mais avançado na plataforma Java, oferecendo conhecimentos básicos e práticos nas novidades lançadas na versão do Java 8 que mudaram totalmente o paradigma e a forma de pensar na programação. A compreensão dos novos recursos e da filosofia da programação funcional lançada no Java 8 é de fundamental importância para que um desenvolvedor que pretende ampliar o seu leque de conhecimentos para a criação de aplicações mais robustas e bem escritas.

Público Alvo

Desenvolvedores Java que desejam aprender os novos recursos de programação lançados na versão Java 8.

Nível de Dificuldade

Intermediário

Pré-requisitos

  • Ter conhecimentos de nível intermediário da linguagem java, oop e api’s do jse.
  • Pc contendo no mínimo de 2 GB RAM com Windows VISTA/WIN7/WIN10.

Presencial

EAD

CONTEÚDO PROGRAMÁTICO

Introdução ao Java 8

– Informações de lançamento
– Novidades jdk 8

Default Method

– O que é ?
– Para que serve ?
– Regras de sintaxe
– Exercícios

Virtual Extension Methods

– O que é ?
– Para que serve ?
– Exercícios
– Pontos de melhorias

Herança Multipla

– O que é ?
– Para que serve ?
– Regras de sintaxe
– Exercícios

Interface Static Method

– O que é ?
– Para que serve ?
– Regras de sintaxe
– Exercícios
– Pontos de melhorias

Interfaces Funcionais

– O que é ?
– Para que serve ?
– Regras de sintaxe
– Exercícios
– Interfaces funcionais JDK

Programação Funcional

– O que é ?
– Para que serve ?
– Pontos de melhorias
– Paradigma de programação imperativo
– Exercícios
– Paradigma de programação declarativo
– Exercícios
– Comparação entre paradigma funcional versus imperativo
– Java 8 é 100% funcional ?

Introdução ao Lambda: Padrão de Projeto Strategy

– O que é ?
– Para que serve ?
– Benefícios
– Exercícios

Lambda

– O que é ?
– Para que serve ?
– Regras de sintaxe: em-linha
– Exercícios
– Regras de sintaxe: em-bloco
– Exercícios
– Regras de sintaxe: em-bloco tipada.
– Exercícios
– Referências funcionais
– Exercícios
– Loop Funcional forEach: List, Set e Map
– Exercícios

Method References

– O que é ?
– Para que serve ?
– Regras de sintaxe
– Exercícios

Referências Opcionais

– O velho e bom conhecido NullPointerExcetion
– O que é ?
– Para que serve ?
– Métodos básicos da java.util.Optional
– Exercícios

Stream API

– O que é ?
– Para que serve ?
– O que é coletagem ? Para que serve ? Exercícios
– O que é ordenação ? Para que serve ? Exercícios
– O que é mapeamento? Para que serve ? Exercícios
– O que é filtragem ? Para que serve ? Exercícios
– O que é procura ? Para que serve ? Exercícios
– O que é redução ? Para que serve ? Exercícios
– Operações funcionais: Sum, Avarage, Max, Min e Count. Exercícios.
– O que é paralelização ? Para que serve ? Exercícios
– Dicas finais de programação funcional versus OOP

Date API

– O que é ?
– Para que serve ?
– O que é LocalTime ? Para que serve ? Exercícios
– O que é LocalDate ? Para que serve ? Exercícios
– O que é LocalDateTime ? Para que serve ? Exercícios
– Exercícios com formatações e comparações
– O que é ajustadores de tempo? Para que serve ? Exercícios

Metaspace

– O que é ?
– Para que serve ?

Referências Bibliográficas

– Indicação de livros