O que é um padrão e o que não é?

  • Publicado em Chris Richardson (microservices.io)
  • Selecionado em
O que é um padrão e o que não é? - Chris Richardson (microservices.io)
Imagem: Chris Richardson (microservices.io)

Os engenheiros de software utilizam diversos tipos de conhecimento reutilizável, incluindo princípios, práticas, técnicas, normas, projetos, métodos, regras, arquiteturas de referência e abordagens de implementação. Muitas pessoas escrevem sobre padrões, incluindo eu. No entanto, notei que, tal como muitos conceitos em engenharia de software, o conceito de padrão sofreu com a difusão semântica . Existe uma tendência para rotular muitos tipos diferentes de conhecimento reutilizável como "padrões", mesmo quando não se enquadram na definição, e para chamar a qualquer conjunto deles linguagem de padrões.

Incomoda-me por alguns motivos. Sou fã de padrões e linguagens de padrões desde que o livro "Design Patterns" dos Gang of Four os popularizou na comunidade de software em meados da década de 90, pelas razões que descrevo abaixo. Gosto do Domain-Driven Design, que valoriza a terminologia precisa. E como autor, tento usar as palavras com cuidado…