DEV Community

Cover image for 3 estratégias para organizar nosso código de maneira mais profissional
Ramon Borges
Ramon Borges

Posted on

3 estratégias para organizar nosso código de maneira mais profissional

A nossa principal tarefa como desenvolvedor é resolver problemas. A nossa principal ferramenta para alcançar essa meta é o nosso código.

Um código não profissional, tem o poder de nos atrasar consideravelmente, nos fazendo trabalhar mais lentamente. Além disso, nesse contexto de código ruim, qualquer alteração pode ser acompanhada de bugs. Isso é péssimo!

Como podemos superar isso? Como organizar o nosso código de maneira mais profissional?

Os amigos inseparáveis

Se em algum momento da vida teve contato com orientação a objetos, já deve ter ouvido falar sobre coesão e acoplamento. Estes são dois conceitos fundamentais neste paradigma. Idealmente, um bom código é composto de alta coesão e baixo acoplamento. Talvez, podemos dizer que uma das características de um código profissional esteja resumida nesta frase.

As 3 estratégias

Gostaria de listar três estratégias que certamente nos ajudarão na caminhada de produzir códigos com alta coesão e baixo acoplamento (ou seja, código mais profissional).

Nem tudo precisa estar público

Quanto mais aberto for cada um dos nossos contextos, mais a nossa base de código se tornará uma emaranhado de objetos. Certamente a manutenção desse código será mais difícil, já que existe uma ligação muito grande entre todo o código (alto acoplamento). Isso pode fazer com que a alteração em um ponto do sistema propague a necessidade de mudanças em outros. Nós precisamos resistir a tentação de deixar tudo público! Isso diminui as chances de criar dependências desnecessárias para as nossas classes.

Cada um no seu quadrado

Os pacotes devem conter todas as classes de um contexto específico. O código que serve a um propósito comum deve se manter unido. Isso mantém nosso código mais coeso. Baixa coesão significa que o código que compõem alguma funcionalidade pode estar espalhado por toda a base de código, em diversos contextos. Isso dificulta tanto a legibilidade como a manutenibilidade.

Programando para interfaces

Como então um contexto pode conversar com outro sem deixar todas as classes públicas? Uma das maneiras de resolver esse problema é permitir que os contextos se comuniquem através de interfaces e que na medida do possível, apenas elas sejam publicas. Ela será a porta de entrada do seu contexto.

Conclusão

Este foi um primeiro passo para o desenvolvimento de um código mais profissional. Certamente a aplicação dessas estratégias, permitirá desenvolver um código melhor, mais fácil de manter e mais adaptável a novos requisitos. Espero que tenha gostado do conteúdo, até a próxima 🤙!

📃 Para saber mais

Créditos foto: Fundo foto criado por evening_tao - br.freepik.com

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

AWS GenAI LIVE!

GenAI LIVE! is a dynamic live-streamed show exploring how AWS and our partners are helping organizations unlock real value with generative AI.

Tune in to the full event

DEV is partnering to bring live events to the community. Join us or dismiss this billboard if you're not interested. ❤️