Home > Artigos > Princípios SOLID - Princípio da Inversão de Dependência - 5 de 5

27-03-2023

Princípios SOLID - Princípio da Inversão de Dependência - 5 de 5

Princípios, SOLID, Princípio, Inversão, Dependência


Muitas vezes o conceito de Inversão de Dependência é confundido com a Injeção de Dependência, mas são conceitos distintos apesar de ambos terem como propósito o desacoplamento do código. O princípio da Inversão de Dependência defende que as dependências devem ser sobre as abstrações e não sobre as implementações. Este é o princípio “D” dos princípios SOLID definidos por Robert C. Martin (Uncle Bob).


A forma como Uncle Bob definiu este princípio foi a seguinte:

  • Classes de alto nível não devem depender de classes de baixo nível mas sim de abstrações.
  • Abstrações não devem depender de detalhes, os detalhes é que devem depender de abstrações.

 

Recorrendo ao princípio da Inversão de Dependência a manutenção do código torna-se uma tarefa mais simples. Com a inversão de dependência, é possível mudar a implementação de uma classe sem afetar outras partes do sistema. Isso permite que as mudanças sejam feitas com mais segurança e menos risco de introduzir erros em outras partes do sistema.

 

Com este princípio temos também a possibilidade de testar o código de forma mais eficiente. Como as dependências são injetadas em tempo de execução, é possível substituí-las por versões de teste que simulam o comportamento esperado. Isso torna os testes mais fáceis de serem escritos e executados, além de permitir que a equipa de desenvolvimento teste de forma isolada as diferentes partes do sistema.

 

O princípio da Inversão de Dependência não tem uma implementação trivial. É necessário um planeamento cuidadoso e uma compreensão clara das dependências do sistema para que a inversão de dependência seja feita corretamente. Além disso, é necessário que a equipa de desenvolvimento esteja comprometida em manter o código limpo e seguir as boas práticas recomendadas pelo SOLID, a fim de obter todos os benefícios dessa abordagem.

 

Artigos relacionados:

 

 

 

 

👉 Instagram @niuGIS

RELACIONADAS


05-05-2023
ECMAScript

Contacte-nos 214 213 262

Informações