O que é SOLID?

A pessoa desenvolvedora enfrenta, quase sempre, o mesmo desafio. Ela começa a criar o seu projeto buscando melhorias contínuas. Mas o cliente insiste em enviar requisições com o projeto em andamento. Para garantir que as mudanças não afetem de maneira profunda a arquitetura original, causando vários bugs, os times de desenvolvimento recorrem ao SOLID. Mas o que é SOLID e como ele se aplica no dia a dia do developer? 

A palavra SOLID é o acrônimo para cinco princípios da Programação Orientada a Objetos (POO) e veio para facilitar o desenvolvimento de softwares, deixando-os mais fáceis de manter e de estender. 

Confira neste post alguns detalhes importantes sobre o conceito, que é o tema de hoje do Dicionário Tech da Coodesh. 

Como surgiu o termo SOLID? 

O termo SOLID é o acrônimo para os cinco princípios da POO, a saber:

  • S de Single Responsibility Principle (Princípio da Responsabilidade Única); 
  • O de Open-Closed Principle (Princípio Aberto-Fechado);
  • L de Liskov Substitution Principle (Princípio da Substituição de Liskov);
  • I de Interface Segregation Principle (Princípio da Segregação da Interface);
  • D de Dependency Inversion Principle (Princípio da Inversão da Dependência).

Os postulados foram apresentados, pela primeira vez, por Robert C. Martin, em um artigo escrito em 2000, com o título de “Postulados de Projeto e Padrões de Projeto”. 

No entanto, o termo SOLID acabou sendo usado apenas mais tarde, por Michael Feathers

Como usar os princípios? 

Como é possível perceber na definição do que é SOLID, os princípios auxiliam a pessoa desenvolvedora a manter um código limpo e sem risco de erros, mesmo após várias mudanças. 

Além disso, é possível fazer com que mais de uma pessoa trabalhe no mesmo código, sem maiores problemas. 

Outro detalhe a ser lembrado é que o SOLID pode ser aplicado em qualquer linguagem com Programação Orientada a Objetos.

Assim, o Princípio de Responsabilidade Única, significa que uma classe deve ter somente um motivo para mudar. 

Já a segunda diretriz, que é o Princípio Aberto-Fechado, mostra que você deve ser capaz de estender um comportamento de uma classe sem a necessidade de modificá-lo. 

O terceiro princípio, de Substituição de Liskov, revela que as classes-base devem ser substituídas por suas classes derivadas.  

Já o quarto princípio é o da Segregação da Interface. Ele quer dizer que muitas interfaces são melhores do que apenas uma. 

E, por último, o princípio da Inversão da Dependência, representando que a dependência é de uma abstração e não de uma implementação. 

Vantagens 

Você viu o que é SOLID, mas agora é importante também conhecer as suas vantagens e porque ele é um recurso tão usado nas equipes de desenvolvimento de softwares. 

Entre as principais vantagens, estão: 

  • Melhoria na organização e entendimento; 
  • Novas possibilidades de atualizações, sem maiores consequências; 
  • Aplicação de testes de maneira mais dinâmica; 
  • Melhoria no aproveitamento de código; 
  • Maior adaptabilidade a mudanças no projeto. 

Mas e quando não usamos SOLID? As dificuldades podem trazer maiores danos ao desenvolvimento, como dificuldade de testagem, código sem padrões e mais sujeito a bugs. 

Conclusão

Assim, é fácil identificar que o que é SOLID está diretamente ligado à qualidade do código. Consequentemente, há um ganho de produtividade. 

Embora seja difícil eliminar os problemas, com esse recurso as soluções tendem a ficar mais acessíveis.

E, então, gostou das informações? Agora, que tal acompanhar os conteúdos do Dicionário Tech no blog da Coodesh?
Somos uma startup de HR Tech pronta para ajudar developers a encontrar sua posição no mercado de trabalho, bem como os tech recruiters a facilitar o preenchimento das vagas. Saiba mais clicando aqui.

Como se tornar desenvolvedor Mobile iOS?

Como a metodologia de lean startup pode acelerar o seu negócio?