Mateus Müller

O carinha do Linux

22 maio 2019

5 dicas INCRÍVEIS para melhorar seus scripts em Shell!

Quando estava iniciando minhas experiências em Shell Script, eu realmente escrevia os códigos de qualquer forma, sem pensar na manutenção posterior e muito menos nos colegas que trabalhariam naquele mesmo script. Neste post, quero te dar 5 dicas infalíveis que podem ser aplicadas aos seus programas em shell.

Algumas dessas dicas eu retirei analisando códigos de outras pessoas, outras em leituras sobre shell e outras até mesmo em leituras de clean code, que usei para o meu trabalho final da faculdade.

O shell é uma linguagem de script e precisa ser tratada de maneira organizada assim como qualquer outra linguagem. A maioria das pessoas negligencia o uso de boas práticas por ser uma linguagem “simples” e que muitos não dão a devida importância, apesar de ter um poder tremendo.

Caso você tenha interesse, eu fiz dois vídeos sobre alguns projetos em Shell:

1. Estrutura

Você precisa criar uma estrutura para o seu programa em shell, para que ele fique organizado e muito mais fácil de manter. Eu recomendo sempre usar a estrutura Variáveis -> Testes -> Funções -> Execução.

Clique aqui e veja um exemplo de código que fiz.

Note que tudo está comentado dentro de uma estrutura específica. Imagine se não estivesse? Começando com uma função, que depois executa um código, aí uma declaração de variável no meio do código… Não! NÃÃÃÃO!

Você precisa estruturar o seu código. Lembre-se: “Você não deve programar para a máquina. Você deve programar para humanos”. Sempre pense no próximo que pode vir a manter esse código.

2. Nomenclaturas

Tanto as variáveis quanto as funções precisam ter nomes específicos, objetivos e descritivos. Já vi muita gente usando os nomes de variáveis como “a1”, “b_1″… Isso é inaceitável!

Por exemplo, se você tiver uma variável que armazena o nome completo de algum usuário, você não faria ela apenas “NOME”. Você deveria usar algo como “NOME_COMPLETO”. A ideia é que um programador apenas lendo o nome, consiga entender o seu objetivo e o que precisa ser alterado.

O mesmo serve para as funções. Uma função que calcula a raiz quadrada de um número X, não deveria ter um nome como “raiz” ou “calcula”. Ela precisa de fato descrever o funcionamento do programa como um todo, como por exemplo “CalculaRaizQuadrada” ou “calcula_raiz_quadrada”.

3. Comentários

Os comentários são uma prática que gera uma certa discussão, pois existem diversos pontos de vista e eu sou a favor do ponderamento de comentários. Um comentário precisa existir somente se necessário, quando necessário. Você não deve usar um comentário para explicar alguma gambiarra que você fez, porque nesse caso o ideal é trabalhar no código e não criar um comentário.

Fora isso, quando necessário um comentário, é interessante que você varie e saiba qual o mais adequado para cada situação. Por exemplo, podemos usar comentários em blocos, comentários super objetivos ou até comentários em linhas.

Um comentário em bloco geralmente é usado para explicar uma função ou algo mais complexo dentro do código. Um comentário objetivo é usado como “sim ou não”. Por exemplo, para validar se um programa está instalado, seria algo como:

# firefox instalado?

Muito mais objetivo do que comentar algo como “Verifica se o utilitário firefox está instalado no sistema atual”.

Já os comentários em linha seria a mistura dos dois, mas que é feito somente em uma linha para descrever algo brevemente.

4. Diferenciação de variáveis

Você precisa usar nomenclaturas diferentes para variáveis locais e variáveis globais. As variáveis globais estão geralmente no começo do script e sempre em letras MAIÚSCULAS.

Já as variáveis locais que geralmente são declaradas dentro de funções, usam letras minúsculas e precedida da palavra “local”. Por exemplo, a declaração de uma variável local de um nome completo seria algo como “local nome_completo”.

5. Forma reduzida

Optar sempre pela forma reduzida de validações “if” quando possível. Pode-se utilizar o “&&” para condições positivas e “||” para condições negativas. Por exemplo:

[ $1 -eq $2 ] && echo "$1 é igual a $2"

Muito mais fácil do que escrever:

if [ $1 -eq $2 ]
then
  echo "$1 é igual a $2"
fi

Conclusão

Essa são apenas algumas das boas práticas que podem ser aplicadas para melhorar seus códigos de programação. Tudo isso e muitas outras dicas você encontra no meu curso de Shell Script Profissional, que aplicado ao cupom de leitor do blog tem o valor de apenas R$19,99. Clique aqui e garanta o seu.

Me siga no Instagram onde eu faço conteúdos da minha rotina diária.

Participe dos nossos grupos no Telegram e Facebook! 🙂

Se tiver alguma dúvida ou sugestão de conteúdo, por favor, comente!

Comentários Disqus