Estilo de Codificação Vertical

Olá, Devs!!! Vamos falar de algo que pode parecer simples, mas que tem um impacto enorme na legibilidade e manutenção do nosso código: Estilo de Codificação Vertical. Você pode pensar: “Por que a orientação do meu código importa?”, mas acredite, faz toda a diferença e é uma das práticas recomendadas em muitos guias de estilo de código, incluindo os relacionados ao .NET.

1. Por que escrever código verticalmente?

Já se deparou com uma linha de código tão longa que você tinha que rolar a tela para ler tudo? Ou então com funções gigantescas que parecem nunca terminar? Então, essa é a razão pela qual devemos prestar atenção em como estruturamos nosso código.

2. Mantenha seus métodos curtos

Eu sempre recomendo: faça seus métodos serem curtos e focados em uma única tarefa. Não apenas eles se tornam mais fáceis de ler, mas também de testar e reutilizar. E, ao fazê-los curtos, você naturalmente estará escrevendo mais “verticalmente”.

3. A sequência importa

Quando você organiza seu código de forma vertical, tem uma oportunidade de ouro de colocar seus métodos na ordem em que são chamados. Isso facilita enormemente para qualquer pessoa (inclusive você, no futuro) que esteja tentando entender o fluxo do programa.

4. Evite linhas longas

Lembra daquela linha que você teve que rolar para ler? Vamos evitar isso! Mantenha suas linhas dentro de um limite razoável. Algo entre 80 a 120 caracteres costuma ser um bom padrão. Você não apenas evita a rolagem, como também torna tudo mais agradável visualmente.

5. Indentação e espaçamento

Indentar seu código corretamente destaca sua estrutura. Isso sem falar no espaço em branco entre blocos de código, métodos e classes. Pode parecer bobo, mas esses “respiros” visuais ajudam nosso cérebro a processar a informação de maneira mais eficiente.

Por exemplo:

codificação vertical

 

O estilo de codificação vertical não é apenas uma moda ou uma preferência estilística. É uma abordagem que pode melhorar significativamente a legibilidade e manutenção do seu código .NET. E, ao final do dia, um código mais limpo e organizado significa menos bugs e uma manutenção mais tranquila. Portanto, da próxima vez que você estiver codificando, lembre-se de pensar verticalmente!

 

Até a próxima!!!

Sparse Column – Entity Framework

Olá Devs!!! Vamos conversar sobre essa coisa chamada Sparse Column no contexto do SQL Server e como isso se encaixa com o Entity Framework. Entendo que o termo soe um pouco técnico, mas prometo que vai ficar mais claro.

1. O problema do espaço com nulls

Imagine que você tem uma tabela enorme e muitas das colunas nessa tabela têm toneladas de valores vazios, ou seja, NULLs. Agora, mesmo que você pense “Ah, é apenas um valor vazio“, no banco de dados, cada um desses NULLs ocupa espaço. Pode não parecer muito em pequena escala, mas em uma tabela grande, isso acumula e se torna um desperdício real de espaço.

2. A magia das colunas sparse

O que o SQL Server faz é permitir que você marque uma coluna como “Sparse“. Quando você tem um valor NULL em uma coluna marcada assim, ele não ocupa espaço algum. No entanto, quando há um valor real, ele acaba consumindo um pouquinho mais de espaço do que uma coluna normal.

3. Restrições e detalhes

Há algumas coisas que você precisa saber sobre colunas Sparse. Você não pode ter mais de 30.000 delas em uma única tabela, e há certos tipos de dados que não são compatíveis, como como “timestamp“, “geography“, entre outros. Além disso, se quiser adicionar um índice, há algumas etapas adicionais envolvidas, como usar um “column set“, que é uma coluna XML computada que combina todas as colunas sparse da tabela.

4. Integrando com o entity framework

Ah, e em relação ao Entity Framework? Com o Entity Framework Core, você tem uma maneira prática e direta de lidar com Sparse Column. Ao definir um modelo no EF Core, basta aplicar o método .IsSparse() na propriedade desejada para indicar que essa coluna deve ser tratada como Sparse no SQL Server. Esse recurso é especialmente útil porque elimina a necessidade de configurações manuais no banco de dados ou de usar comandos SQL brutos durante as migrações.

Ao aplicar .IsSparce() em uma propriedade, o EF Core garante que, ao criar ou migrar sua base de dados, ele configure a coluna correspondente como Sparse no SQL Server. É uma maneira integrada e fluida de otimizar seu banco de dados para colunas que têm uma alta frequência de valores NULL, economizando espaço e mantendo a eficiência.

sparse column

5. Conclusão: vale a pena?

A ideia por trás das colunas Sparse é economizar espaço quando se tem muitos valores NULL. Tem seus prós e contras, como qualquer tecnologia. A economia de espaço é real, mas é preciso equilibrar com outros fatores como desempenho e complexidade.

 

Se você sentir que se encaixa no seu cenário, vá em frente e experimente!!!