Princípio SOLID e Códigos Limpos

Ao começar a pesquisar sobre SOLID, foi possível encontrar muito conteúdo sobre o clássico Metal Gear Solid. Porém, calma lá! Ele não tem nada a ver com o que vamos falar a seguir. Apesar de ser uma excelente opção de entretenimento para os embalos de sábado à noite! Nosso SOLID trata-se de um acrônimo para os cinco princípios da programação orientada para objetos. E, se você é um amigo programador, com certeza já ouviu falar dele ou mesmo que não lembre de cara pela sigla, com toda certeza o utiliza diariamente em seus projetos ou deveria utilizá-lo.  Para você que nunca ouviu falar, nem do game e muito pouco sobre programação. Este texto vai te explicar um pouco sobre este fundamento.

SOLID para os íntimos ou Single responsibility, Open-closedLiskov substitution, Interface segregation and Dependency inversion.

Foi criado por Robert C. Martin¹ (também conhecido como Uncle Bob) para que um projeto seja realmente orientado a objetos, ao invés de um fruto sem rumo, pé ou cabeça. Em resumo, proporcionar as ferramentas para a construção de códigos limpos.

“Por que é tão importante criar sites com códigos limpos?”.

Não é difícil encontrar sites repletos de gambiarras (aqueles clássicos jeitinhos sem qualquer ordem) e amadorismos no código fonte. Transformando programadores e designers em verdadeiros faxineiros das bagunças feitas por outros, ao invés de criarem um site de fato.

Adicionar elementos ou realizar correções em um projeto mal feito trazem muito mais dores de cabeça, aumentam o tempo de implementação do projeto e, é claro, mais gastos.

Pode parecer que não faça diferença naquele momento inicial. Contudo, um código limpo pode melhorar o tempo de carregamento do site, além de trazer benefícios para seu SEO (ranqueamento em buscas, como por exemplo, no Google).

 

Vantagens de manter o código limpo

01 – Menor ocorrência de bugs

Com menos códigos, menor chance de criar algum bug estranho. Além disso, vai ser mais fácil encontrar e corrigir todos os erros que possam surgir.

Adicionar muitos códigos pode trazer certa segurança a desenvolvedores inexperientes, porém podem causar um pesadelo mais para frente. Deixando tudo confuso e fazendo com que a equipe perca tempo a longo prazo.

02 – Facilita a edição

Começar a trabalhar com um código limpo, proporciona grande facilidade, para quem criou ou qualquer outro desenvolvedor, acessar e editar quando necessário.

Com menos códigos, fica mais claro o que o código está fazendo e onde é necessário fazer as alterações.

03 – Carregamento mais rápido

Códigos limpos proporcionam menor tempo de carregamento da página que é fator importantíssimo ao ranqueamento das páginas no Google, como também em outros buscadores.

04 – Demonstra Profissionalismo

Uma codificação limpa é maneira certeira de mostrar o domínio das habilidades de programação.

05 – Economia de tempo e dinheiro

Manter o hábito de trabalhar com códigos limpos transforma a eficiência de todo o processo. É possível economizar dinheiro com horas demasiadas para corrigir erros e tempo do profissional para ser empregado em outros projetos. Sem contar ter em mãos um produto que não irá consumir mais tempo que o necessário para ser atualizado ou modificado quando necessário.

Vale lembrar ao desenvolvedor:

  • Verificar se as tags foram fechadas;
  • Atentar para os padrões da W3C ao desenvolver o seu site;
  • Não utilizar tabela;
  • Utilizar as propriedades do CSS;
  • Não salvar arquivos com nomes que não são informativos, como por exemplo, “GAHgaksjhsuyr.psd”;
  • Pensar na otimização das páginas para os buscadores (SEO) em cada passo da criação e não se perca na usabilidade. A experiência do usuário é muito importante.

 

Caso tenha interesse em saber mais sobre o SOLID, confira o nosso post sobre os exemplos de cada acrônimo em funcionamento.

Procure também pelo livro “Orientação a Objetos e SOLID para ninjas” de Maurício Aniche.

Leia na web o artigo “The Principles of OOD”.

 

¹ Robert Cecil Martin – Também conhecido como “Uncle Bob” (Tio Bob em português), é uma grande personalidade da comunidade de desenvolvimento de software, métodos ágeis e software craftsmanship, atuando na área desde 1970. Atualmente é consultor internacional e autor de vários livros abordando o tema.

É fundador da Object Mentor Inc, empresa de consultoria especializada em C++, Java, OOP, design patterns, UML, metodologias ágeis, e Extreme Programming. Atualmente faz parte da equipe 8th Light.