Article image
Adriana Silva
Adriana Silva16/03/2023 17:57
Compartilhe

SOLID: OS CINCO PRINCÍPIOS DE DESENVOLVIMENTO DE SOFTWARE PARA CRIAR CÓDIGO LIMPO E FÁCIL DE MANTER

    Fala comunidade, tudo bem? 

    Eu sou a Adriana Silva e hoje estou trazendo um tema fundamental quando falamos de desenvolvimento de software.  

    Para isso, entender sobre a aplicação dos princípios SOLID é muito importante. Essa é uma abordagem amplamente utilizada por desenvolvedores para criar software com código limpo, fácil de entender e manter.  

    Leia esse artigo até o final e fique por dentro dos 5 princípios que consistem o SOLID e como eles podem ajudar a criar um um software melhor para o seu portifólio chamar atenção em uma avaliação técnica. 

     

    O QUE É SOLID? 

     

    SOLID é um acrônimo para cinco princípios de design de software que foram propostos por Robert C. Martin (também conhecido como Uncle Bob) na década de 1990. Esses princípios tornam o software mais fácil de entender, modificar e manter.  

     

    Confira agora quais são esses 5 princípios e como eles funcionam: 

     

    S - Single Responsibility Principle (Princípio da Responsabilidade Única): cada classe ou módulo de software deve ter apenas uma responsabilidade. Isso significa que cada classe deve fazer apenas uma coisa e fazer bem. Se uma classe tiver mais de uma responsabilidade, ela será mais difícil de entender, testar e manter. 

     

    O - Open-Closed Principle (Princípio Aberto-Fechado): as entidades de software (como classes, módulos ou funções) devem estar abertas para extensão, mas fechadas para modificação. Isso significa que o código existente não deve ser modificado para adicionar novos recursos ou comportamentos. Em vez disso, novos recursos devem ser adicionados por meio de extensões, como herança ou composição. 

     

    L - Liskov Substitution Principle (Princípio da Substituição de Liskov): objetos de uma classe derivada devem poder ser usados no lugar de objetos de sua classe base sem que o programa seja alterado. Isso significa que as classes derivadas não devem quebrar a funcionalidade da classe base ou introduzir comportamentos inesperados. 

     

    I - Interface Segregation Principle (Princípio da Segregação de Interface): uma classe não deve ser forçada a depender de interfaces que não usa. Isso significa que você deve criar interfaces específicas para cada responsabilidade da classe, em vez de criar uma única interface que abranja todas as responsabilidades. 

     

    D - Dependency Inversion Principle (Princípio da Inversão de Dependência): módulos de alto nível não devem depender de módulos de baixo nível. Em vez disso, ambos devem depender de abstrações. Isso significa que você deve depender de interfaces, em vez de implementações concretas. 

     

    Esses princípios ajudam a criar software mais flexível, modular, reutilizável e fácil de manter. Uma maneira mais simples de aprender é fazendo o Curso “Desenvolvendo sua aplicação com C# usando SOLID” aqui na DIO.  

     

    Ao seguir esses princípios, você pode evitar problemas comuns de desenvolvimento, como código complexo e difícil de entender, dependências rígidas, dificuldade em testar e alterar o código, e assim por diante. 

     

    E, embora esses princípios sejam valiosos, é importante lembrar que eles não são uma bala de prata para todos os problemas de design de software. Eles devem ser aplicados com moderação e bom senso, e em alguns casos pode ser necessário fazer algumas concessões para atender aos requisitos do projeto.  

     

    O objetivo aqui é alcançar um equilíbrio entre flexibilidade e simplicidade, e criar um software que possa evoluir e crescer sem se tornar complicado e difícil de manter. 

     

    ________________________________________________________________ 

    Gostou desse artigo? Não deixe de comentar se você tiver alguma dúvida!  

     

    Lembre-se que aqui na plataforma você encontra cursos com as principais linguagens de programação. Acesse a barra “Cursos” e escolha qual cominho combina mais com o seu objetivo de futuro. 

    Compartilhe
    Comentários (7)
    Gilvan Alves
    Gilvan Alves - 23/03/2023 13:03

    Ótimo artigo Adriana, Parabéns!

    Marcelo Acruche
    Marcelo Acruche - 21/03/2023 03:00

    Ótimo artigo que nos ajuda a evoluir, cada dia mais.

    Marcos Leonel
    Marcos Leonel - 20/03/2023 14:33

    Com sua autorização posso compartilhar no Linkdin???

    Marcos Leonel
    Marcos Leonel - 20/03/2023 14:32

    Muito bem explicado!!!!

    AP

    Alexandre Pereira - 20/03/2023 12:02

    Muito bom!!

    MP

    Marcelo Paula - 20/03/2023 11:56

    Thank you, I'm feel more SOLID to program! :)

    Vanessa Dutra
    Vanessa Dutra - 16/03/2023 18:19

    Excelente artigo, principalmente para mim que estou iniciando :)