Introdução à Arquitetura e Design de Software

Uma visão sobre a plataforma Java

Paulo Silveira, Guilherme Silveira, Sérgio Lopes, Guilherme Moreira, Nico Steppat, Fabio Kung
  •   

*Você terá acesso às futuras atualizações do livro.

Conteúdo

Neste livro, os autores, conhecidos especialistas da área, apresentam muitos tópicos que aparecem com frequência na plataforma Java, incluindo desde modelagem e design das classes, até detalhes importantes das tecnologias mais utilizadas.

Sempre com uma visão técnica e prática capaz de elucidar muitas questões enfrentadas tanto pelo profissional iniciante quanto por aquele que está adquirindo mais experiência na plataforma.

Os e-books da Casa do Código não possuem DRM. Compre agora e baixe o PDF, epub e mobi e leia no dispositivo que quiser.

Saiba o que você vai aprender

 

Sumário

  • 1 - A plataforma Java
  • 1.1 - Java como plataforma, além da linguagem
  • 1.2 - Especificações ajudam ou atrapalham?
  • 1.3 - Use a linguagem certa para cada problema
  • 2 - Java Virtual Machine
  • 2.1 - Princípios de garbage collection
  • 2.2 - Não dependa do gerenciamento de memória
  • 2.3 - JIT Compiler: compilação em tempo de execução
  • 2.4 - Carregamento de classes e classloader hell
  • 3 - Tópicos de Orientação a Objetos
  • 3.1 - Programe voltado à interface, não à implementação
  • 3.2 - Componha comportamentos
  • 3.3 - Evite herança, favoreça composição
  • 3.4 - Favoreça imutabilidade e simplicidade
  • 3.5 - Cuidado com o modelo anêmico
  • 3.6 - Considere Domain-Driven Design
  • 4 - Separação de responsabilidades
  • 4.1 - Obtenha baixo acoplamento e alta coesão
  • 4.2 - Gerencie suas dependências através de injeção
  • 4.3 - Considere usar um framework de Injeção de Dependências
  • 4.4 - Fábricas e o mito do baixo acoplamento
  • 4.5 - Proxies dinâmicas e geração de bytecodes
  • 5 - Testes e automação
  • 5.1 - Testes de sistema e aceitação
  • 5.2 - Teste de unidade, TDD e design de código
  • 5.3 - Testando a integração entre sistemas
  • 5.4 - Feedback através de integração contínua
  • 6 - Decisões arquiteturais
  • 6.1 - Dividindo em camadas: tiers e layers
  • 6.2 - Desenvolvimento Web MVC: Actions ou Componentes?
  • 6.3 - Domine sua ferramenta de mapeamento objeto relacional
  • 6.4 - Distribuição de objetos
  • 6.5 - Comunicação assíncrona
  • 6.6 - Arquitetura contemporânea e o Cloud
  • 7 - Integração de sistemas na Web e REST
  • 7.1 - Princípios de integração de sistemas na Web
  • 7.2 - Padronizações, contratos rígidos e SOAP
  • 7.3 - Evite quebrar compatibilidade em seus serviços
  • 7.4 - Princípios do SOA
  • 7.5 - REST: arquitetura distribuída baseada em hipermídia

Postagens mais visitadas deste blog

Spring Toll Suite - Instalando o Spring boot