Use o código e tenha 10% de desconto!

Java 9 Interativo, reativo e modularizado

Rodrigo Turini

Conteúdo

Com mais de 20 anos de plataforma, um novo Java surge com novidades importantes. O destaque especial vai para o sistema de módulos, o Jigsaw, e a modularização do próprio JDK. A linguagem também ficou interativa, com a adição de uma ferramenta de REPL (Read-Eval-Print Loop), e mais reativa, com uma API de fluxos inteiramente dedicada aos famosos Reactive Streams.

As APIs de HTTP/2 Client, Logging e Stack-Walking são outros exemplos de novidades que serão explorados. Além disso, você verá surpresas como métodos privados em interfaces, arquivos de properties com suporte a UTF-8 e os vários novos métodos default nas APIs de Collection, Stream e outros.

Neste livro, Rodrigo Turini mostrará as principais novidades do Java 9 com a criação de um projeto prático, no qual você acompanhará com as mãos na massa as mudanças da plataforma e como migrar os seus códigos para tirar proveito dos novos recursos.

 

Sumário

  • 1 A vida antes e depois do Java 8
  • 1.1 Que venha o Java 9
  • 1.2 Propostas que ficaram de fora
  • 1.3 Acesse e exercite todo o código visto
  • 1.4 Entre em contato conosco
  • 1.5 Instalando o Java 9
  • 2 JShell: Java 9 interativo
  • 2.1 JShell, o REPL do Java
  • 2.2 Iniciando o JShell
  • 2.3 O clássico hello world com REPL
  • 2.4 Declarando variáveis explicitamente
  • 2.5 Declarando variáveis de forma implícita
  • 2.6 Ajustando os níveis de feedback
  • 2.7 Métodos, classes e instruções mais complexas
  • 2.8 Adicionando imports
  • 2.9 Atalhos, truques e auto-completion
  • 2.10 Explorando novas APIs
  • 2.11 Mais detalhes e configurações
  • 2.12 Download dos exemplos deste capítulo
  • 3 Atualizações nas principais APIs
  • 3.1 Melhorias nas Collections
  • 3.2 Atualizações nos Streams
  • 3.3 Novos Collectors
  • 3.4 Atualizações no Optional
  • 3.5 Mais novidades
  • 3.6 Download dos exemplos deste capítulo
  • 4 HTTP/2 Client API
  • 4.1 O primeiro dos incubator modules
  • 4.2 Preparando seu ambiente
  • 4.3 Requests HTTP da forma antiga
  • 4.4 O novo HTTP/2 Client API
  • 4.5 Lidando com redirects
  • 4.6 Configurando o HttpClient
  • 4.7 Buscando livros com HTTP/2 client
  • 4.8 Requisições assíncronas
  • 4.9 Criando um arquivo CSV no retorno
  • 4.10 Outras novidades do HTTP/2 Client API
  • 4.11 Download dos exemplos deste capítulo
  • 5 Reactive Streams
  • 5.1 Emissão de notas fiscais
  • 5.2 Primeiro contato com fluxo reativo
  • 5.3 Criando seu próprio Subscriber
  • 5.4 Entendendo o Processor
  • 5.5 Download dos exemplos deste capítulo
  • 6 Juntando as peças
  • 6.1 Criando um novo projeto
  • 6.2 Listando livros com HTTP/2 client
  • 6.3 Integrando a emissão de notas fiscais
  • 6.4 Interagindo com a lista de livros
  • 6.5 Revendo o projeto e responsabilidades
  • 6.6 Download do projeto completo
  • 7 Java Modular
  • 7.1 Antes do Java 9
  • 7.2 Que venha o modular
  • 7.3 Modularizando a bookstore
  • 7.4 Trabalhando com diferentes módulos
  • 7.5 O JDK modular
  • 7.6 Para saber mais
  • 7.7 Download do projeto completo
  • 8 Criando imagens de execução customizadas
  • 8.1 Criando uma imagem de execução customizada
  • 8.2 Criando a imagem a partir das definições do projeto
  • 8.3 Análise de dependências dos módulos
  • 8.4 Encontrando detalhes dos módulos e dependências via Reflection
  • 8.5 Download das JREs criadas
  • 9 Evolução dos JARs no JDK 9
  • 9.1 Empacotando projetos modulares
  • 9.2 Executando projetos modulares
  • 9.3 Multi-Release JAR files
  • 9.4 Para saber mais
  • 10 Logging API
  • 10.1 Criando um módulo de logs
  • 10.2 Logs da JVM e Garbage Collector
  • 10.3 Download do projeto completo
  • 11 Stack-Walking API
  • 11.1 Novo módulo de Tracking
  • 11.2 Stack-Walking API
  • 11.3 Criando Stacks com mais informações
  • 11.4 Download do projeto completo
  • 12 Mais Java 9, APIs e outras mudanças
  • 12.1 Quebra de compatibilidade?
  • 12.2 Strings mais leves e eficientes
  • 12.3 Garbage Collectors e o G1
  • 12.4 Download dos exemplos deste capítulo
  • 13 Continuando seus estudos
  • 13.1 Como tirar suas dúvidas
  • 13.2 E agora?

veja mais detalhes

Autor

Rodrigo Turini

Rodrigo Turini é Bacharel em Ciência da Computação e líder técnico na Alura, a plataforma de cursos online do Grupo Caelum. Desenvolve em diferentes linguagens, mas tem um envolvimento muito forte com o Java, sendo membro ativo da JCP e de expert groups do JavaEE. Turini participa ativamente da comunidade em blogs, fóruns, listas de discussões e também em eventos nacionais e internacionais. É um dos líderes de desenvolvimento do VRaptor, e contribui para diversos outros projetos e manifestos open source. Gosta de estudar continuamente as melhores práticas da orientação a objetos, programação funcional e reativa.

Dados do produto

Número de páginas:
273
ISBN:
978-85-94188-09-0

Compartilhe!

Compartilhe no Facebook Compartilhe no Twitter