Aula 02
Estilo Padrão de Código de Go: Formatação Automática em Golang com o go fmt
Summary
# Resumo da Apresentação sobre Formatação de Código em Golang
## Introdução
O apresentador discute a formatação de código na linguagem Golang, focando no comando `gol fmt`. A linguagem foi projetada para ser simples, com uma formatação de código padrão que deve ser seguida por todos os desenvolvedores, reduzindo a necessidade de decisões sobre estilo pessoal.
## Princípios de Golang
- **Simplicidade**: A linguagem foi criada para evitar complexidade.
- **Uniformidade**: Existe uma única maneira de escrever o código, o que pode ser bom para alguns, mas problemático para quem prefere personalização.
## Regras de Formatação
- **Indentação**:
- Apenas tabulações (caractere `tab`) devem ser usadas para a indentação, eliminando conflitos sobre o uso de espaços.
- A configuração do editor pode ajustar o comprimento visual das tabulações (e.g., aparecer como 2, 4 ou 8 espaços).
## Demonstração do comando `gol fmt`
1. O apresentador mostra um código mal formatado, com problemas de alinhamento e uso excessivo de espaços.
2. Após rodar o comando `gol fmt`, o código é automaticamente formatado de acordo com o padrão da linguagem.
3. O comando corrige questões como:
- Chaves devem estar na mesma linha que o comando (sem quebra de linha).
- Espaços extras são removidos e substituídos por tabulações.
## Benefícios do `gol fmt`
- **Consistência**: Garante que todo o código esteja de acordo com as normas da linguagem antes de fazer commits.
- **Elimina reclamações**: Facilita a vida dos desenvolvedores ao evitar que o código quede exposto a críticas por formatação.
## Conclusão
Em Golang, a formatação do código é padronizada e os desenvolvedores devem aceitar essas regras para manter a uniformidade. O uso do `gol fmt` é recomendado para todos que desejam evitar problemas de formatação antes de compartilhar ou fazer commits de seu código.
## Encerramento
O apresentador agradece o público, incentivando a curtidas e inscrições no canal.
Video Transcript
Olá pessoal, na estalava falar de formatação de código na ligação de Golang.
Então Golang, vou falar do comando gol fmt.
Antes disso, falar um pouco, comentar sobre a linguagem Golang, em termos de formatação do estilo do código.
Então, o cara que fiz o Golang, queria como princípio fazer a linguagem bem simples e sem ter que pensar muito de como escrever o código.
E por isso que eles decidiram que vão abrir mão de ter flexibilidade para fazer todo mundo escrever o código de uma maneira só.
Então, no Golang, a maneira de escrever o código não é flexível.
Então, só vai ter uma maneira de fazer a coisa que você quiser.
Então, por causa disso, o Golang define uma formatação padrão de estilo que todo mundo tem que seguir.
Então, por um lado, é bom que facilita a pessoa não ter que perder tempo de fazer assim ou fazer do outro estilo, não sei o que.
Mas, por outro, tem gente que não gosta, tem gente que acompanha esse que tem seu próprio estilo e gostaria de personalizar isso.
Então, é uma faca de duas lá, duas láminas.
Então, uma coisa para você se lembrar, que por exemplo, a indentação no Golang, eles decidiram que vai ser indentação usando o caractere de tabulação, o tab.
Então, teve esse conflito, né?
Ou você usa para indentação espaço em branco, por exemplo, dois espaços no mínimo, quatro espaços, oito.
Ou você usa o caractere tab, que é o contra-barra T.
Então, os designers do Gol decidiram que vão usar tab, então todo mundo tem que usar tab no código de Gol.
Então, você tem que saber disso.
Então, quando você usa tab, você pode configurar só editor para que a tab apareça de um certo comprimento.
Por exemplo, apareça como dois, como se fosse dois espaços, como se fosse quatro, como se fosse oito, por exemplo.
Certo?
Então, para demonstrar que o comanda Gol FMT, eu estou no meu editor de texto, que é o Atom.
Eu habilei a opção de mostrar invisíveis.
Isto é, por exemplo, os espaços, a tab e outros caracteres, em vez de aparecer em branco, vai aparecer um caractere para indicar que aquele caractere é um tab, tá?
É um espaço em branco, sim por diante.
Você vê que as tabulações invisíveis para o tab vai ser nesse caractere de dois sinais de maior combinado juntos, né?
Desse de chevron, duplo chevron.
Então, com isso, habilitado o meu editor, eu vou para o meu arquivo que eu criei, esse arquivo aqui que eu fiz várias formatação bem ruim, né?
Vamos te dizer.
Mas eu fiz de propósito, várias indentação, não estar no mesmo nível, por exemplo.
Esse fecha, aqui, chave da funk de fora, não está alinhado a palavra funk com o fechamento da chave, não está alinhado no else, nem do if.
E eu adicionei espaço aqui, muito espaço, depois da vígula, antes do segundo parâmetro da função de fora.
E essa função, eu botei o primeiro letra capitalizada para poder disponibilizar fora.
Quem chama esse pacote de fora tem acesso a essa função, mas ele...
Por exemplo, se você usar o gol lint, depois que a gente vai ver, ele vai reclamar, você tem que botar comentário, não sei o que, e tal e tal.
Mas a gente vai falar só de formatação agora, com o gol FMT.
Então, o gol FMT vai, quando você chama esse comando, ele vai formatar o seu código da maneira padrão do gol.
Eles querem que você faça o seu código e tal e tal, mas antes de você fazer o comete, por exemplo, no get, para você terminar de escrever o seu código,
você vai fazer o comete, roda o gol FMT antes de tudo para poder formatar tudo no padrão do gol, para não ter nenhuma reclamação.
Ah, você não usou esse tipo de padrão, não sei o que, não sei o que.
Então, ele vai mudar o código e vamos ver o que acontece.
Falar gol, espaço FMT, espaço nome do arquivo não, underscore, formatado.go.
Ah, eu esqueci de fazer uma coisa, desculpa.
Certo? Então, vamos ver o que...
Não formatado, linha 7.
Em verdade, o contato foi encontrado, então, é ok.
Agora, cláusula, linha 7.
O contato foi encontrado.
Aqui.
Ah...
Clicando aqui...
Acho que foi na...
Talvez seja na mesma linha que o fecha.
Vamos ver.
Deixa eu deixar assim.
Pronto.
Linha 6.
Tem uma coisa.
Então, está reclamando...
O else tem que estar na mesma linha do fecha-chave.
E o abrir-chave do else-if tem que estar na mesma linha do else-if.
Agora está reclamando na linha 14.
Mesma coisa, tem que estar na mesma...
A sintaxe do gol é sempre assim, não há flexibilidade das chaves, né?
Então, eles tinham decidido que para a linguagem gol todo mundo vai ter que usar a chave...
Abre a chave na mesma linha do seu statement, né?
Nesses casos, funk main, funk de forums, ok, bull, f no seu que...
Sempre na mesma linha, não é?
Eu posso fazer na linha nova.
Então, não vai ter esse...
Ah, como é que se fala?
Essa briga, não.
Meu estilo é na mesma linha dos statement.
Não, meu estilo é sempre quebrar a nova linha para abrir a chave.
Então, o gol decidir que vai ser na mesma linha assim que eles querem.
Pronto, então, olha o que aconteceu.
Eu rodei o gol FMT depois de consertar que é o exerro de sintaxe.
Na verdade, o exerro que eu tive antes era o de sintaxe.
Não é assim que o gol FMT não rodou ainda para formatar o código, né?
Então, eu tinha que consertar aqueles erros da sintaxe do gol que tem que ter a chave na mesma linha.
Então, ótimo que o código todo foi formatado direitinho na maneira do gol, que é padrão.
Note que esses chevros apareceram aqui nos espaços de indentação.
Esse, na verdade, representa a tabulação, a tab, caractere tab.
E, no meu caso, aparece como dois espaços, mas, na verdade, pode ser quanto espaço você quiser, dependendo da configuração do editor.
Você pode configurar o seu editor para que a tab apareça como dois espaços, como eu já fiz.
Quando eu tenho aqui, ou que aparece como quatro espaços, ou que aparece como o oito, assim, por diante, você pode escolher.
Então, só te mostrar aqui o controle de antes e o depois.
Olha só, antes, tudo desalinhado, passo extra e tal e tal.
E depois ele consertou os espaços extras e alinhou tudo e converteu, na verdade, converteu.
Você note que antes eu tinha espaço na indentação, que é esse ponto, ponto, ponto.
Espaço em branco em vez de tab, só tinha tab na linha 7.
Aí ele mudou, modificou e substituiu todos os espaços por tab, que é a maneira do gol que eles querem que você faça.
Então, com isso, você pode ver aqui no meu getd, porque eu fiz, ele consertou tudo.
E você pode fazer o seu comete depois de rodar o gol FMT, que ele já vai estar formatado na maneira que eles querem e não vai ter reclamação.
Está certo?
Então, esse é o gol FMT para poder formatar o seu código de gol na maneira padrão.
Normalmente, você pode escrever seu código e, quando você terminar de escrever, roda gol FMT para ele poder já formatar tudo certinho.
Aí você pode já fazer o get comete e criar o seu comete com tudo já formatado.
Sem problemas, ninguém vai reclamar a galera do gol, não vai reclamar do seu código de gol.
Então, o gol, o reiterão no gol, ele... uma linguagem bem assim...
Só há uma maneira de fazer isso, e essa é a maneira, e todo mundo tem que fazer dessa maneira, no alto-accivilidade da linguagem.
Então, é uma linguagem simples, nesse termo, você só tem uma maneira de fazer a coisa.
E, quando a gente fala de estilo de programação, os criadores de linguagem de gol, aqueles desenvolvedores da linguagem,
decidiram que o estilo só vai ser um e vai ser o estilo padrão de gol, e ninguém vai poder mudar isso.
Então, por exemplo, quando abre a chave, vai ser na mesma linha, não pode... não é da nova linha.
Em termos de espaço de intentação, você vai sempre usar o contra-barra take, o caractere de tab.
Não é espaço em si próprio.
E assim por diante, né?
Tá bom?
Então, por essa aula é só.
Espero que você tenha gostado, não se esqueça de deixar o seu like,
e se inscreva no canal e ajuda muito.
E até mais!
Nenhum comentário ainda (loading...)
Nenhum comentário ainda (loading...)
Gostou da aula? 😆👍
Apoie nosso trabalho com uma doação: