
Hello, there! Você já ouviu falar na "Law of Demeter"? Ela costuma aparecer quando falamos de boas práticas de programação, porque ela representa um princípio que é muito útil para escrever um código mais organizado e fácil de manter.
Então vamos entender o que é a Law of Demeter, por que ela existe e como pode melhorar a qualidade do seu software? Let's go!
O que é a LAW OF DEMETER em programação?
A Law of Demeter (Lei de Deméter) é um princípio de design de software que tem uma ideia muito simples: um objeto deve conhecer o mínimo possível sobre outros objetos.
Isso quer dizer que um componente do sistema deve interagir apenas com seus "amigos mais próximos", ou seja, seus próprios métodos, seus atributos diretos e objetos explicitamente passados para ele, evitando acessar estruturas internas profundas de outras partes do sistema.
A Law of Demeter também pode ser resumida como "talk only to your immediate friends" ("fale apenas com seus amigos imediatos"). Esse princípio ajuda a reduzir o acoplamento entre componentes, tornando o código mais modular, mais fácil de testar, mais flexível e mais simples de manter.
Esse nome surgiu em 1987 e foi proposto por Ian Holland. Deméter é considerada a deusa grega da agricultura, e a Law of Demeter propõe que o software cresça aos poucos, como uma plantação que vai crescendo e se espalhando. Very smart, don't you think?
Now let's see some examples to practice your English?
- What do you think of building this software using the Law of Demeter? (O que você acha de construir este software usando a Lei de Deméter?)
- Following the Law of Demeter is a good idea to improve maintainability. (Seguir a Lei de Deméter é uma boa ideia para melhorar a manutenção do código.)
- We refactored the module to better align with the Law of Demeter. (Refatoramos o módulo para alinhá-lo melhor com a Lei de Deméter.)
- The Law of Demeter helps reduce excessive coupling. (A Lei de Deméter ajuda a reduzir acoplamento excessivo.)
Aplicar a Law of Demeter pode parecer um detalhe, mas faz uma boa diferença em sistemas complexos. Quanto menos dependências desnecessárias, mais saudável tende a ser o código.
Have you ever refactored code that violated the Law of Demeter? (Você já refatorou um código que violava a Lei de Deméter?)
Continue com a gente no nosso artigo "O que é um MANDELBUG?". See you!