
A diferença entre design da arquitetura e design de software está no nível de abstração e nos aspectos que cada um aborda.
1. Design da Arquitetura (Arquitetura de Software)
- Foca na visão macro do sistema, ou seja, na estrutura geral e na forma como os componentes se conectam.
- Define quais tecnologias serão usadas e como os sistemas se comunicam entre si.
- Lida com decisões estratégicas, como escalabilidade, segurança, desempenho e integrações.
- Exemplo: Decidir que o backend será em Go, usará RabbitMQ para mensageria e armazenará dados em um banco NoSQL.
2. Design de Software (Arquitetura Interna do Código)
- Foca na implementação dentro de cada componente do sistema.
- Define padrões de código, organização de classes, módulos, funções e regras de programação.
- Usa princípios como SOLID, Padrões de Projeto (Design Patterns), DDD (Domain-Driven Design), entre outros.
- Exemplo: Definir que uma API REST será estruturada usando Camada de Serviço, Repositório e Controller, aplicando boas práticas de orientação a objetos.
Resumindo
- Design da Arquitetura → Olha o sistema como um todo, definindo conexões entre componentes.
- Design de Software → Olha o código dentro de cada componente, garantindo boas práticas na implementação.
Ambos são essenciais para um sistema bem estruturado!
COMPARTILHE: