
Hello, there! Você já ouviu alguém usar a sigla "SoC" durante uma conversa sobre programação, especialmente sobre arquitetura de software? Se você ficou em dúvida, nós já adiantamos que essa sigla representa um conceito super importante para escrever código mais organizado e fácil de manter.
Confira abaixo o que significa SoC em programação e como esse conceito aparece no dia a dia de quem desenvolve software. Check it out!
Você conhece a sigla SoC em arquitetura de software?
A sigla SoC vem de "Separation of Concerns", que em português pode ser traduzido como "Separação de Responsabilidades" ou "Separação de Interesses".
A palavra "concern", em inglês, pode ser entendida como uma "preocupação", mas não no sentido negativo, como uma preocupação de que algo ruim pode acontecer (senão a palavra correta seria "worry"), e sim uma preocupação com o sentido de interesse, uma responsabilidade de alguém.
O princípio SoC diz que cada parte do sistema deve ter uma responsabilidade bem definida, sem misturar funções diferentes no mesmo lugar. Ou seja: nada de colocar regra de negócio, acesso a banco de dados e lógica de interface tudo no mesmo arquivo.
O objetivo do Separation of Concerns é deixar o código mais organizado, modular, testável e fácil de manter. Quando cada parte cuida apenas do que lhe diz respeito, fica muito mais simples alterar uma funcionalidade sem quebrar o resto do sistema.
Esse conceito aparece bastante em arquiteturas como MVC (Model-View-Controller), APIs bem estruturadas e até na organização de pastas em projetos maiores. Sempre que você separa responsabilidades de forma clara, está aplicando SoC.
Now let's take a look at a few examples?
- Good architecture is all about Separation of Concerns. (Uma boa arquitetura é toda sobre separação de responsabilidades.)
- We need better SoC, this controller is doing too many things. (Precisamos melhorar a separação de responsabilidades, esse controller está fazendo coisa demais.)
- Applying SoC makes the code easier to test. (Aplicar SOC deixa o código mais fácil de testar.)
- They didn't use SoC, now the maintenance is a nightmare! (Eles não usaram a Separação de Responsabilidades, agora a manutenção é um pesadelo!)
Have you ever tried to use SoC in a project? (Você já tentou usar SoC em um projeto?)
Continue com a gente no nosso artigo "O que é um RAVIOLI CODE?". See you!