Características do livro
Os padrões de design de cabeça nos dizem o que são padrões, como usá-los e como pensar sobre eles. Um padrão é um modelo, uma solução universal para um conjunto específico de problemas. Os padrões de projeto são, por sua vez, soluções arquitetônicas comumente usadas que podem ser usadas para escrever aplicativos flexíveis e fáceis de usar. Desenvolvedores em todo o mundo resolvem os mesmos problemas com as mesmas abordagens. Como diz a anotação, se você não quiser reinventar a roda, use modelos de design (padrões) prontos, com os quais este livro se dedica a trabalhar . Separadamente, vale destacar a apresentação do material: os livros da série Use a Cabeça! são famosos por sua simplicidade e são lidos de uma só vez. “Padrões de Design” não é exceção. Também adere aos seguintes princípios fundamentais:- Visibilidade
- Estilo conversacional de apresentação
- Um grande número de ilustrações
- Participação ativa do leitor
- Apelo às emoções
- Chamando a atenção do leitor
Tema principal e ideia chave
“Certamente alguém já resolveu o seu problema” - é assim que começa o primeiro capítulo do livro, transmitindo todo o significado dos padrões de design na programação. O objetivo principal é transmitir corretamente o seu significado ao leitor, pois antes de tudo o programador deve saber para que servem os padrões e em que ponto eles precisam ser aplicados. Essencialmente, primeiro você precisa classificar os modelos em pequenos pedaços em sua cabeça e só depois implementá-los em programas. Se um iniciante em programação tiver um bom entendimento de padrões, seu uso pode complicar bastante o código (mas deve simplificá-lo!). À pergunta “Por que os padrões de projeto devem ser usados?” O livro dá uma resposta clara: “Conhecer conceitos como abstração, herança e polimorfismo não faz de você um bom designer OO. Os padrões contêm experiência comprovada em design OO.”"Resumo"
O livro está dividido em 14 capítulos mais uma introdução. No início, os autores do livro tentam preparar o leitor, afinar seu cérebro para perceber corretamente as informações sobre o design de padrões. O primeiro capítulo explica o princípio básico dos padrões e a que finalidade eles servem. Um dos padrões mais utilizados – a estratégia – é examinado de maneira fácil e discreta. Os capítulos dois a onze são dedicados a uma análise detalhada de padrões individuais :- Observador. Distribui eventos entre objetos interessados em sua ocorrência.
- Decorador. Outra análise da herança em Java e da concessão de novos recursos às classes Java sem modificar o código.
- Fábrica. O padrão salva o código de dependências indesejadas.
- Solteiro. Também conhecido como Singleton, permite criar um único objeto de classe para todo o programa.
- Equipe. O padrão permite encapsular convenientemente uma chamada de método, expandindo seus recursos.
- Adaptador e Fachada. Resolvendo o problema de incompatibilidade de interface, bem como empacotando objetos para simplificar sua interface.
- Método de modelo. Encapsulamento de blocos algorítmicos, permitindo que subclasses se associem ao algoritmo de processamento desejado a qualquer momento.
- Iterador e vinculador. O padrão fornece uma ferramenta conveniente para iterar coleções, independentemente do seu tipo. Além disso, o capítulo fornece algumas informações sobre supercoleções.
- Estado. Os objetos são dotados da capacidade de controlar seu comportamento por meio de mudanças em seu estado interno.
- Deputado. Um padrão muito conveniente para controlar o acesso a um objeto.
Vantagens e desvantagens
Eu, como muitos dos que estudam no JavaRush, tenho uma atitude fria em relação a palestras chatas, material abarrotado e outras violências contra o psiquismo de um aluno sedento por conhecimento. A energia gasta na memorização de textos incompreensíveis, na minha opinião, é melhor gasta na busca de fontes alternativas de aprendizagem. Este livro vale seu tempo e esforço. Um excelente estilo de apresentação, um gerenciamento competente da atenção do leitor e a repetição de pontos-chave constituem a principal vantagem deste livro - a facilidade de assimilação do material . Um grande número de ilustrações é uma vantagem adicional. Na minha opinião, cada imagem do livro tem o seu lugar: todas permitem reforçar as palavras dos autores e obter uma compreensão mais profunda da essência do material. Como escrevi acima, este livro não é um livro de referência: seus autores não pretendem listar todos os padrões. Sua principal tarefa é proporcionar compreensão e falar sobre os padrões básicos para que outros, mais complexos, sejam mais fáceis de entender. E ela lida com isso 100%. Entre as desvantagens está que os padrões de design Head first em russo não são tão fáceis de ler como em inglês. É claro que todo desenvolvedor deve falar inglês, mas os programadores novatos nem sempre desenvolvem essa habilidade a tal ponto que possam ler livros no original. No entanto, isso pode ser considerado um sinal de menos forçado, uma vez que o material é apresentado com bastante precisão e o significado é preservado.Livros adicionais sobre padrões de design
Sou um defensor da crença de que é melhor estudar tópicos fundamentais de diversas fontes e procurar neles um estilo de apresentação adequado. Quando você quiser mergulhar em padrões e ler teorias adicionais, acredite, você terá algo com que ocupar suas noites.-
Técnicas de design orientado a objetos. Padrões de Projeto (Gamma E., Helm R., Johnson R., Vlissides J.).
Esta é uma publicação mais séria, um livro de referência de padrões, um livro muito respeitado da “Gangue dos Quatro”. Muitos a chamam de bíblia do design OO.
Na Internet, as opiniões dos desenvolvedores estão divididas em 3 campos:
- alguns argumentam que o livro está desatualizado e o estilo de apresentação impossibilita a leitura
- outros recomendam usar o livro apenas como referência sobre padrões, nada mais
- outros ainda dizem que o livro é o Santo Graal dos padrões de design e deve ser lido por qualquer pessoa que queira um dia se tornar um Desenvolvedor Java Sênior
Importante:Os exemplos do livro estão escritos em C++.
-
JavaEE. Padrões de design para profissionais (Murat Yener, Alex Fidom).
Este livro é dedicado ao design de aplicações empresariais: ele cobre muitos exemplos de problemas de aplicações da vida real.
-
Padrões de projeto em Java (Grand M.).
O livro demonstra de forma colorida como o uso de padrões economiza tempo dos desenvolvedores, fornece uma visão geral da linguagem UML e descreve 47 padrões de projeto.
Padrões de projeto em JavaRush
No curso JavaRush, os padrões de design são aprendidos no nível 7 da missão Java Collections. As aulas 1 e 2 são dedicadas aos padrões mais comuns e na aula 4 você pode resolver problemas neste tópico. Abaixo estão alguns artigos interessantes para “se fortalecer”:-
Um artigo geral sobre o tema padrões com categorias, exemplos, tudo que gostamos.
-
Dois artigos sobre padrões: visão geral da parte 1 e parte 2 mais detalhada .
-
Padrões de projeto usando o padrão Singleton como exemplo .
-
Artigos sobre os padrões “ Estratégia ” e “ Adaptador ”.
-
O conceito de padrões de projeto está relacionado aos diagramas UML, este artigo irá ajudá-lo a entender o que são.
GO TO FULL VERSION