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

Design Patterns com Java Projeto orientado a objetos guiado por padrões

Eduardo Guerra

Conteúdo

Não é trivial compreender bem os design patterns. Entender quando aplicá-los é algo que qualquer desenvolvedor deve saber. Nesse livro, você aprenderá com exemplos práticos e bem contextualizados como aplicar os padrões e em quais situações um é mais indicado que o outro. Diferencie as características particulares de cada padrão, crie aplicações que usam o melhor da orientação a objetos em seu favor e desenvolva aplicações que você conseguirá manter para sempre!

 

Sumário

  • 1 Entendendo padrões de projeto
  • 1.1 Conceitos da orientação a objetos
  • 1.2 Mas esses conceitos não são suficientes?
  • 1.3 O primeiro problema: cálculo do valor do estacionamento
  • 1.4 Strategy: o primeiro padrão!
  • 1.5 O que são padrões?
  • 1.6 Como o livro está organizado
  • 2 Reúso através de herança
  • 2.1 Exemplo de padrão que utiliza herança - Null Object
  • 2.2 Hook Methods
  • 2.3 Revisando modificadores de métodos
  • 2.4 Passos diferentes na mesma ordem - Template Method
  • 2.5 Refatorando na direção da herança
  • 2.6 Criando objetos na subclasse - Factory Method
  • 2.7 Considerações finais do capítulo
  • 3 Delegando comportamento com composição
  • 3.1 Tentando combinar opções do gerador de arquivos
  • 3.2 Bridge - uma ponte entre duas variabilidades
  • 3.3 Hook Classes
  • 3.4 State - variando o comportamento com o estado da classe
  • 3.5 Substituindo condicionais por polimorfismo
  • 3.6 Compondo com múltiplos objetos - Observer
  • 3.7 Considerações finais do capítulo
  • 4 Composição recursiva
  • 4.1 Compondo um objeto com sua abstração
  • 4.2 Composite - quando um conjunto é um indivíduo
  • 4.3 Encadeando execuções com Chain of Responsibility
  • 4.4 Refatorando para permitir a execução de múltiplas classes
  • 4.5 Considerações finais do capítulo
  • 5 Envolvendo objetos
  • 5.1 Proxies e decorators
  • 5.2 Exemplos de Proxies
  • 5.3 Extraindo um Proxy
  • 5.4 Adaptando interfaces
  • 5.5 Considerações finais do capítulo
  • 6 Estratégias de criação de objetos
  • 6.1 Limitações dos construtores
  • 6.2 Criando objetos com métodos estáticos
  • 6.3 Um único objeto da classe com Singleton
  • 6.4 Encapsulando lógica complexa de criação com Builder
  • 6.5 Relacionando famílias de objetos com Abstract Factory
  • 6.6 Considerações finais do capítulo
  • 7 Modularidade
  • 7.1 Fábrica dinâmica de objetos
  • 7.2 Injeção de dependências
  • 7.3 Service Locator
  • 7.4 Service Locator versus Dependency Injection
  • 7.5 Considerações finais do capítulo
  • 8 Adicionando operações
  • 8.1 Classes que representam comandos
  • 8.2 Cenários de aplicação do Command
  • 8.3 Double Dispatch - Me chama, que eu te chamo!
  • 8.4 Padrão Visitor
  • 8.5 Considerações finais do capítulo
  • 9 Gerenciando muitos objetos
  • 9.1 Criando uma fachada para suas classes
  • 9.2 Separando código novo de código legado
  • 9.3 Mediando a interação entre objetos
  • 9.4 Reaproveitando instâncias com Flyweight
  • 9.5 Considerações finais do capítulo
  • 10 Indo além do básico
  • 10.1 Frameworks
  • 10.2 Utilizando tipos genéricos com os padrões
  • 10.3 Padrões com Test-driven Development
  • 10.4 Posso aplicar esses padrões na arquitetura?
  • 10.5 Comunidade de padrões
  • 10.6 E agora?

veja mais detalhes

Autor

Eduardo Guerra

Eduardo Guerra é desenvolvedor de frameworks, editor-chefe da revista MundoJ e pesquisador do Instituto Nacional de Pesquisas Espaciais (INPE). Foi professor do Instituto Tecnológico de Aeronáutica (ITA), onde concluiu sua graduação, mestrado e doutorado. Suas pesquisas se concentram nas áreas de design, arquitetura e teste de software. Possui diversas certificações da plataforma Java e experiência como arquiteto de software. Participa de projetos de frameworks open-source, como SwingBean, Esfinge e ClassMock. Ele acredita que um bom software se faz mais com criatividade do que com código e vive em busca de melhores formas para seu desenvolvimento. Está no Twitter como @emguerra.

Dados do produto

Número de páginas:
334
ISBN:
978-85-66250-11-4

Compartilhe!

Compartilhe no Facebook Compartilhe no Twitter