Você está na página 1de 2

Padrões de projeto de software são ferramentas valiosas para moldar e aprimorar a

arquitetura de software. Eles fornecem soluções reutilizáveis para problemas comuns de


design, permitindo que os desenvolvedores construam sistemas mais robustos, flexíveis e
escaláveis. Neste contexto, exploraremos como cada um dos quatro grupos de padrões de
projeto: estruturais, comportamentais, persistência e apresentação pode modificar a
arquitetura de software.

Vejamos o padrão estrutural com foco em Composição de classes e objetos para


criar estruturas maiores, exemplos, Decorator: Adicionar funcionalidades a objetos sem
modificar a classe original, Bridge: separa a interface de uma classe da sua implementação,
permitindo maior flexibilidade. Como impacto na arquitetura: maior modularidade e
flexibilidade na organização das classes, facilita a reutilização de código e a manutenção do
sistema, permitindo a criação de sistemas mais adaptáveis a mudanças nos requisitos.

Seguindo para o padrão Comportamental com foco em algoritmo e


responsabilidades atribuídas aos objetos do sistema, exemplos, Observer: Permite que
vários objetos se inscrevam para receber notificações quando um estado muda, Strategy:
Permite que diferentes algoritmos sejam usados para realizar a mesma tarefa. Sendo assim
melhora a comunicação entre os objetos, tornando o sistema mais coeso. permite maior
flexibilidade e extensibilidade do sistema, facilita a implementação de diferentes
comportamentos sem modificar a estrutura do sistema.

Assim como o padrões de persistência com foco em soluções para problemas de


armazenamento de informações, exemplos, Active Record: Mapeia objetos de software para
registros em um banco de dados, Data Access Object (DAO): Encapsula o acesso a um
banco de dados. gerando impacto na arquitetura: separa a lógica de negócios da lógica de
acesso a dados, torna o sistema mais independente da plataforma de banco de dados
utilizada, facilita a manutenção e a portabilidade do sistema.

Já o padrões de apresentação com foco em soluções para problemas comuns no


projeto da interface de software, Exemplos, Model-View-Controller (MVC): Separa a
interface do usuário, a lógica de negócios e a apresentação dos dados, Composite: Permite
criar interfaces compostas por outras interfaces menores. Impacto na Arquitetura: Torna a
interface do usuário mais modular e reutilizável, Facilita a manutenção e a atualização da
interface do usuário, Permite maior flexibilidade na criação de interfaces complexas.

Por fim, os grupos de padrões de projeto fornecem um conjunto de ferramentas


poderosas para moldar a arquitetura de software de forma eficiente. Ao utilizá-los de forma
consciente e adequada, os desenvolvedores podem criar sistemas mais robustos, flexíveis,
escaláveis e fáceis de manter.

Referências:

● Disciplina de Arquitetura de Software da universidade FMU


● Padrões de Arquitetura de Software: https://es.wiktionary.org/wiki/removido
● Design Patterns: Elements of Reusable Object-Oriented Software:
https://www.amazon.com/Design-Patterns-Elements-Reusable-Object-Oriented/dp/02016336
12
● Padrões de Arquitetura de Software: Um Guia Prático: https://es.wiktionary.org/wiki/removido

Você também pode gostar