O Sass e o Dry

Como aplicar a metodologia Dry utilizando o pré-processador de css

Everton Silva
Everton Silva
4 min readMay 21, 2020

--

Um dos acontecimentos que marcaram a nova fase da web moderna foi o surgimento dos pré-processadores, que trouxeram consigo uma maneira mais prática e moderna de escrever o antigo e repetitivo CSS.

Dentre todos, o que recebeu mais destaque foi o Sass, graças a sua pequena curva de aprendizado, inúmeras features e a possibilidade de escrever o puro CSS dentro de seu formato nested com a extensão de arquivo .scss

Mas, o que é Dry?

O Dry (Don’t Repeat Yourself ) é uma metodologia que defende a não repetição desnecessária do seu código, visando reduzi-lo e otimiza-lo.

Tá, mas como eu aplico isso?

O Sass foi criado com base no Dry, com isso, várias de suas features foram desenvolvidas para se enquadrar neste modelo de desenvolvimento, neste artigo irei mostrar como estas são aplicáveis à metodologia.

Variáveis e Nest

A mais inovadora e útil feature trazida pelo Sass, as variáveis, são o conceito mais puro do Dry, armazenar pequenos fragmentos de código para reutiliza-los sem repeti-los. Vejamos um exemplo:

Variáveis e Nest— Exemplo 1

No código acima, utilizo a variável “$primaria” para definir a cor principal e poder reutiliza-la em qualquer parte do código. Neste exemplo, alem da variável eu utilizo o nest, a funcionalidade do Sass que permite englobar elementos filhos, pseudo-classes (:hover, :focus, etc…) e pseudo-elementos (::before, ::after). Veja como ficaria o mesmo código em css puro:

Variáveis e Nest — Exemplo 2

Parece pouca a diferença não é mesmo? E é, por um simples e único motivo, código pequeno. Observe quantas vezes precisei repetir a cor e a classe .button, agora imagine este mesmo botão dentro da seguinte expressão:

main .destaque figure figcaption .button

Seria necessário repetir a mesma expressão 4 vezes para fazer o mesmo código sendo que com nest só é necessário usar o identificador do elemento pai apenas uma vez.

Mixins e Includes

Já percebeu que todas as vezes que precisamos definir, por exemplo, o estilo do texto de algum elemento sempre utilizamos quase que as mesmas propriedades (Ex.: font-family, font-size, font-weight, color, line-height e etc…), Imagina se fosse possível criar funções para reutilizar estas propriedades e evitar reescreve-las, com os mixins e os includes do Sass isso é mais que possível, por exemplo:

_mixins.scss
app.scss

No arquivo _mixins.scss, eu crio o mixin font com os parâmetros e verifico a existência de cada um deles, permitindo que eu possa usar somente as propriedades que eu julgue necessário.

No app.scss, eu importo o arquivo _mixins (não é necessário dizer a extensão do arquivo na importação) e dentro de cada tag, eu utilizo include para chamar a o mixin que eu desejo usar.

For

No Sass assim como em linguagens de programação é possível utilizar o for para percorrer arrays e/ou usar contadores, é comumente acompanhado da pseudo-classe nth-child() que é uma forma de dizer como um filho especifico do elemento irá se comportar.

For — Exemplo 1

Acima é possível ver a aplicação mais comum do for no Sass. Também foi utilizada a função lighten, irei explicar sua aplicação em um artigo futuro. O resultado desta expressão será este:

For — Exemplo 2

E finalizando…

Existem muitas outras formas de diminuir a quantidade de código que você vai utilizar, essas são as mais simples de serem aplicadas, utilizando elas eu garanto que você irá reduzir trabalho em pelo menos 40%.

Até o próximo artigo Devs, deixem seu Clap para nos incentivar a trazer mais conteúdo de Sass para vocês ❤!

--

--