Vídeos

Clean Code na prática!

Thamyres Nunes
Escrito por Thamyres Nunes em 06/05/2021

Olá, tudo bem? O vídeo de hoje é um trecho de uma aula minha onde falo um pouco sobre Clean Code (Código Limpo) e dou exemplos práticos usando JavaScript. Gostou do vídeo? Deixe o seu like, se inscreva e fale nos comentários se acha que seria uma boa ideia eu lançar mais vídeos como esse por aqui.

Referências:

– Código Limpo: https://amzn.to/3jsS9cA

– Meus cursos: http://184.73.67.74/meus-cursos?utm_source=youtube&utm_medium=link&utm_campaign=cursos&utm_content=cleancode

– Meus livros: http://184.73.67.74/meus-livros?utm_source=youtube&utm_medium=link&utm_campaign=livros&utm_content=cleancode

– Redes Sociais: https://about.me/luiztools

Um abraço e sucesso.

Prof. Luiz

o Olá tudo bem Aqui é o Luiz e o vídeo
de hoje é um trecho de uma das aulas nos
cursos onde eu falo um pouco sobre Clean
code código Limpo Mais especificamente
aplicada a nomenclatura de variáveis
alguma coisa de função e tal mas que dá
uma introdução aí se você nunca não
estudou sobre esse tema acho que esse
vídeo pode interessar pode encurtar um
pouco caminho de entender então mente
aplicado ao cenário de Jesus Cristo
Então vamos lá então esse livro que em
Português se chama código limpo e nada
mais é do que um guia de boas práticas
ele não é um processo ele não é uma
técnica não é que é uma linguagem
específica ele causa uma série de
princípios organizados em Capitu
e onde o Robert Martin começa explicando
o que que é um código Limpo depois vai
entrando em código Limpo de Calçada na
cultura relacionado a coisa relacionado
a orientação a objetos e por aí vai ele
vai entrando afunda no livro aí trazendo
boas práticas e disfunções né nas
práticas que você deve evitar E por que
você deve evitar mas ele não é o tipo de
livro que conta uma história do início
ao fim mas você pode pegar a lei
capítulos meio que isolados vamos dizer
assim e você vai tirar proveito de
qualquer forma você consegue usar ele
inclusive é como fonte de consulta
posterior por exemplo para manter o seu
Machado afiado primeira coisa que o
livro aborda é o que é código Limpo aí
daí o Robert C Martin traz várias
definições do que seria um código dentro
eu não vou trazer aqui só conteúdo desse
livro vou trazer algumas vivências
práticas também e algumas boas práticas
que eu considero né que vale um serviço
Nada também mas a definição escrita são
bem interessantes no livro porque ele
junta diferente
os autores das diferentes Engenheiros de
software com larga experiência e pede
que eles definam que tem um código Limpo
eles fazem coisas por exemplo como
leitura agradável aquele código que você
vai vai olhando vai lendo vai entendendo
vai vai absorvendo conhecimento do que
ele faz E você não fica frustrado ou
confuso né ou meu Deus tá mexendo só que
certo que vai parar de funcionar alguma
coisa você consegue né digerir aquele
código ele usa o termo inclusive né que
é a melhor métrica de qualidade de um
código é o número de vó tá fux por
minuto tá aqui é a pólio ocorre fica
droga é essa não tem que droga é essa
vai Que droga é essa né quando faz muito
né Que droga é essa mas que diabos é
isso coisa do tipo quer dizer ai que o
quanto mais das versões dessa você usa
quer dizer que piora é esse corte então
ele fala também com código limpar um
código coeso é um código então que tem
coerência naquele
é geralmente uma única responsabilidade
ele faz aquela Essa cidade é muito bem
né e senti uma de alta coesão A então
código coesão código coerente com a sua
responsabilidade e ela tá bem
delimitadas as fronteiras
responsabilidade são código não causa
confusão em códigos é muito importante
um quadro de outros conseguem mexer
então você não escreve código Limpo
somente para você você escreve código
Limpo para os outros Martin fowler fala
que qualquer programador né consegue
escrever códigos que computadores
entendam uma somente bons programadores
consegue escrever código que humanos
entendem na então é um pouco disso que é
na escrever código Limpo é um pouquinho
disso não é o que ele traz o primeiro
Capítulo do Rei Cold que é o que é um
código lean on
e quem tem o segundo capítulo Ele é bem
focado em nomenclatura e que é o que eu
vou focar hoje na sessão aqui Tem um
ditado que não lembro agora autor né mas
ela tá aí também ele fala que a gente
tem só duas coisas está muito difícil na
computação uma delas é inválida Cash e a
outra é da nome as coisas né sempre ele
vai dar nome às coisas a gente fica ali
um tempo enorme eu vou dar para isso né
e justamente segundo capítulo do livro
ele trata sobre como é que a gente dá
bons nomes na é importante a gente dá
bons nomes às coisas que a gente
constrói no software porque isso acaba
levando a uma reação em cadeia de outras
coisas boas Nossa aplicação então o
primeiro. Ele tem que entender é que a
gente tem que dar nome significativos as
coisas que a gente tá codificando
e o que é que são nomes significativos
nomes que signifiquem algo que revelem o
propósito do que você está codificando
Hoje eu tô fazendo uma variável o nome
que revele o que ela vai armazenar para
que ela serve você tá me dando nome a
uma função né um nome que significa o
quê que essa função que faz é o que que
ela é o que que você espera como retorno
dela naquela de propiciarem o benefício
de resultado seu nome de uma classe né
Qual é o contexto que ela vai trazer
para as informações contidas nelas tá
então esse é só o primeiro. O nome ele
tem que revelar o propósito E aí a gente
já entra no ponto né que a gente começa
a questionar-se que é melhor nomes
curtos ou nomes mais longos certo na
prática um nome curto de mais uma letra
só por exemplo consiste a O que que
significa consultar
isso não significa nada certo vou
analisar uma série de outras coisas para
conseguir entender o que talvez a
significa porque a sozinho não sei de
nada
E agora se eu tiver também nome
extremamente grande é talvez também ele
não vai ser prático né não vai tá limpo
sem para mim ler ele entender né senão
não foi uma frase né vai ser bem
complicado também então o ideal
realmente é você na ter ali no meio
termo mas a tendência visto que hoje a
nossa ferramentas decodificação ela nos
dão auto-complete elas nos dão
ferramenta de busca Elas têm uma série
de recursos para mim tá quantidade hoje
em dia né nomes maiores ali do que menos
de letras não são problema perto do
passado pessoal até atingir a fazer nome
super curtos porque os problemas que a
limitação de memória e limitação de
caracteres as variáveis de pessoal tinha
que economizar nas letras mas hoje você
não precisa e as ferramentas que ajudam
a programar rápido mesmo com variáveis
um pouco maior certo então se você tiver
na dúvida entre uma muito pequena
tô entendendo um pouco mais a ser grande
né eu diria que tem mais chances do nome
significativo na variável maior tá não é
uma regra absoluta mas geralmente elas
variados com a nomenclatura um pouco
maior eu vou dar alguns exemplos aqui
elas tendem a ser um pouco mais
significativo então nomes significativos
eles ajudam na busca ajuda na
refatoração ajuda você identificar
olhando o código não é para que serve as
coisas e onde elas estão sendo
utilizadas Mas é uma dica né se você não
consegue pronunciar mas você não
consegue ler o nome da sua variável da
sua função não consegue falar dela numa
discussão né com com seus pares talvez
não seja um bom nome também e falar para
ele tava pele mental que é uma pena que
mental Você tem uma série de variáveis
se você não quer dizer nada do tipo A B
C e D você ficar o tempo todo olhando o
código lembrando a tal coisa AB é tão
coisa de fazer se marcamento mental
existe isso é coloca isso serve para
trabalhar
o entendimento do algoritmo não não
descobrindo que tinha àquela variável
certo vai lá já tem que ser óbvias as
funções assim ser mais explícita
possíveis certo e aí uma recomendação
que eu dou bem na salinha uma
substantivas não é uma regra 100% mais
Universal Mas no geral variáveis não é
com o nome de substantivos né então
coisas não é elas tendem a ser mais
significativas do que variáveis que são
só letras ou só siglas ou provérbios ou
coisa do tipo se você é um substantivo
você uma coisa mais substancial certo
daí vem o nome substantivo né algo mais
substancial então use uma variável nome
ao invés de m&a ou número n também ou
qualquer outra coisa né como é com
começa com ele não inveja com a letra
ele a Então hoje é o substantivo não se
o que ele quer isso
Oi e a outra sugestão é a grupo em
contextos não quer com textos muito
grandes você tirar uma função grande
também se você vai ter muitas variáveis
muitas lojas ali dentro e é muito
difícil de entender uma função grande o
nosso cérebro Ele trabalha muito melhor
quando a gente tem pedaços menores de
informação para processar e para
raciocinar sobre um cor de mel é quando
você tem que escrever um comentário né
para explicar uma variável certo isso
novamente é um smell é um cheiro não
quer dizer que esteja podre mas tá com
algum indício ali é o seu tem que
colocar na em cima da variável deixe um
comentário dizendo que é os dias desde a
criação o que que eu não coloco no
próprio nome da variável né Day Since
Creation ou dias desde criação alguma
coisa assim que a deixa a própria
variável mas Pista Eu Não Tenho que
consultar o comentário
bom então esses são dicas são boas
práticas eu tenho uma função
propositalmente eu não coloquei os tipos
aqui apesar de ser um arquivo está
descrito já não era para dar pistas
então tem uma função aqui de calcular a
princípio o nome calcular ele não é um
nome ruim né Ele é um verbo eles
premiação mas as funções ela tem que
estar em Ação mas não exatamente fica
cálculo e as variáveis dele não me ajuda
muito porque eles concordem comigo
naquele tem uma variável e tjp Impacto e
daí você fica assim que diabos né Faz
essa função ela calcula o que o pacto
até é um banho aqui para ver se assim
ele por sem botar emoji ali Então essa é
uma definição que ela funciona e ela
está correta ela resolve o problema do
cliente mas Possivelmente ninguém exceto
eu sabe
e ela serve para você já tinha feito um
sistema desse tipo mas já tem que pagar
tipo de cálculo
e o que que essa função tá fazendo ela
tá calculando o valor total de um
contrato de financiamento
E tomara que ela não ela não me disse
isso quando eu olho ela não me disse
isso certo eu tenho que saber eu sei
porque eu escrevi isso e me jogasse aqui
eu ia demorar um tempinho até mais ou
menos entender e talvez chegar a essa
conclusão A então o como é que eu
poderia refatorar isso para deixar esse
código muito mais limpo e quando a gente
terminar ele não perceber que ele ficou
muito mais interessante do é esse meu Ei
aqui tá variado cref é a entrada do meu
contato aí Tá quanto o cliente tá dando
de entrada certo esse meu pé ele é a
quantidade total né do meu do meu final
do meu contrato de fazer meu bem na
verdade é o próximo botar aqui um pensar
que é de veículo é o pastor tá nem Total
aqui eu posso colocar por exemplo o
valor né veículo que talvez o também não
seja expressivo o bastante
Tá certo então talvez um valor veio você
financiamento de veículo né para botar
aqui ó calcular
e a contrato
o bacon
e o que que é esse meu Jotta aqui esse
meu J são os juros não é na verdade para
ser mais explícito é a taxa de juros
senhora não fala que tem uma taxa de
juros é aquele meu JL e essa minha taxa
de juros ela tem que vir o valor decimal
né de 0 a 1 se por um acaso Olha que eu
tô fazendo aqui na Como é o nome
participado se por um acaso ele é maior
do que um quer dizer que a pessoa não é
passou o percentual não desse mal eu
divido por 100 para pegar o valor
decimal
E aí então só passou por exemplo dois
querendo dizer dois por cento eu tenho
dividir por 100 né para ser 0.02 certo
vem com essa taxa de juros eu posso
fazer o cálculo juros composto Esse é o
cálculo juros composto né UEFI vezes não
é o a potência de uma taxa de juros
levado na P O que que é o p um contrato
financiamento parcelas
o meu pé aqui é pedir parcelas é o
cálculo juros composto
Oi e para encerrar aqui que falta falta
só falta o nosso TRF aqui né que o f é o
valor a ser financiado a Então ela é o
valor do veículo é do valor do bem mas
se não quisesse um bar só para veículo
né eu posso botar aqui valor do valor do
bem contra tudo bem o f ele é o valor
que vai ser financiado a gente pode
votar valor a financiar por exemplo aqui
é a parte sobre o sobre a qual incide
juros certo e já fez conversão Será que
ele sabe que eu tô falando tá esse isso
não vai mudar eu posso usar em vez de
vara fazer um poste eu vou calcular uma
única vez e vou usar depois você deixa
mais legível código também
Oi e esse tac tel taco O Taco É uma
jogadinha para o tac ele é uma sigla na
verdade e talvez para quem é do ramo
bancário tinha mexer com o lançamento
seja a única daquelas variáveis que
entenderia não pergunto porque o tac é a
taxa de abertura de contrato certo ele é
uma sigla exatamente para isso aí essa
taxa varia dependendo do tipo de
contrato que você faça uma modalidade de
crédito está subindo então valor que é
tomado com a sua dívida para fazer o
valor total o seu contrato de
financiamento tá então talvez Itaqui
aqui eu não preciso mudar ele é para não
botar lá taxa de abertura de contrato
não quiser ficar muito grande Talvez o
táxi no contexto bancário ele seja
significativo tá e se ele não for
significativo o suficiente Talvez né eu
usar né um um comentário um a
documentação em código ajude a eu posso
pegar
o** a doente eu possa fazer uma
documentação no próprio código né do que
que faz e o que que espera essa função é
um por exemplo né a entrada e o cliente
vai dar o valor total do veículo né a
taxa de juros a ser aplicada eu posso
botar Inclusive eu ao mês né só que pode
ajudar então esse exemplo de comentário
é que ele é um comentário mais rico ou
um comentário que substitui uma
documentação esperma já tá no código ela
ajuda quando eu vou chamar o a função né
do acoplar contado de vehiculo abro na
parênteses ela já começa a me sugerir
ali ó quando eu não tava aqui já agora
e a
bom e isso me permite aqui algumas
variáveis que estão no domínio do
negócio mesmo que eu traduza para trás
baixar a taxa de abertura de crédito ela
tá escrito de contrato a pessoa fica
assim tá mas ainda assim eu não sei o
que que é isso tá É porque ela só não
domina o negócio da aplicação eu posso
colocar na sua mansão aqui né taxa de
abertura de crédito valor fixo baseado
na modalidade presencial
Oi e o quê que faz essa função né a
calcula o valor total
É financiado de um veículo com juros e
Tá certo então não é toda força Você vai
precisar fazer esse tipo de documentação
Mas algumas funções mais Corre que
envolvem regra de negócio Talvez seja
interessante apartamento se você for
compartilhar essa biblioteca função um
outras áreas da sua empresa não falta de
um exemplo aqui no caso do táxi esse
caminho que seria os seus comentários tá
no caso dos outros talvez já estejam
significativos bastante você queira
ignorar ahmm não tem problema nenhum
beleza mas o táxi Talvez seja
interessante e para finalizar essa
função já está bem melhor do quando a
gente pegou ela ela tem mais texto tem
mas agora o texto consegue entender né
Bem melhor o que ela faz
E para finalizar já que a gente fazendo
essa script a gente pode melhorar isso
né chupando os nossos valores certo pode
estar chupando para evitar uma passagem
de valor errada por exemplo dentro Nossa
função Será que a própria função a gente
pode dizer o que que ela retorna né é um
Number aí no final sabe por isso vai
evitar também que alguém na daqui a
pouco Abra a calculadora veículo e para
o parâmetro entrada ela coloque sim
aquela pancada é sim ou não for legal a
Inclusive eu passo no comentar aqui né o
arroba retorne você quiser eu torna o
valor total no Zap
bom então aqui é a entrada mais parcelas
mais juros mais toque oriental
Oi ó
Eu também faz tempo que fazer para vocês
não é de como é que você aplica né nomes
mais significativos na para melhorar uma
função na hora que elas com maior sem
ficou o maior o que função pequena não
quer dizer necessariamente função melhor
ou mais inteligente é o melhor escrito
tá quer dizer função pequeno e aí gostou
do vídeo se você gostou desse vídeo que
é ver outros vídeos ligados a código
Limpo aqui no canal também sinaliza para
mim deixando o seu like e deixando nos
comentários né que você quer mais ver
desistir hospital e se você também não
concorda alguma coisa que apresentada
também deixa nos comentários e vão
promover discussões sadias a cerca de
Janeiro só você não ainda não é inscrito
no canal também se inscreva e se você
quiser aprender a construir aplicações
profissionais comigo dá uma olhada na
descrição ou já coloquei o link dos meus
livros e dos meus cursos onde você vê na
prática não apenas contamos pontuais
como projetos no início ao fim bom
bom e até o próximo vídeo valeu

Olá, tudo bem?

O que você achou deste conteúdo? Conte nos comentários.

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Assista também

6 dicas de performance em Node.js

WebSockets Client em 15 min! (exemplo em Node.js com Binance)

React Native CLI - Testando em smartphone Android - Aula Grátis #02

Dicas para currículo de devs

06 dicas para bots de criptomoedas

Sequelize em 15 minutos, direto ao ponto! (2021)