<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Victor De Carli</title>
    <description>The latest articles on DEV Community by Victor De Carli (@codigodov).</description>
    <link>https://dev.to/codigodov</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2070653%2Fae43dbd1-d295-431e-9c73-8e62984c50f0.png</url>
      <title>DEV Community: Victor De Carli</title>
      <link>https://dev.to/codigodov</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/codigodov"/>
    <language>en</language>
    <item>
      <title>5 Boas Práticas que irão Melhorar seu Código em JavaScript</title>
      <dc:creator>Victor De Carli</dc:creator>
      <pubDate>Mon, 23 Sep 2024 15:30:00 +0000</pubDate>
      <link>https://dev.to/codigodov/5-boas-praticas-que-irao-melhorar-seu-codigo-em-javascript-56ko</link>
      <guid>https://dev.to/codigodov/5-boas-praticas-que-irao-melhorar-seu-codigo-em-javascript-56ko</guid>
      <description>&lt;p&gt;Se você já começou sua jornada com JavaScript, sabe que &lt;strong&gt;dominar a linguagem&lt;/strong&gt; é só o primeiro passo. A &lt;strong&gt;qualidade do código&lt;/strong&gt; que você escreve pode fazer toda a diferença, tanto para &lt;strong&gt;facilitar&lt;/strong&gt; a manutenção quanto para evitar problemas a longo prazo. Seguir &lt;strong&gt;boas práticas&lt;/strong&gt; não só melhora a &lt;strong&gt;legibilidade&lt;/strong&gt; do código, como também ajuda na &lt;strong&gt;colaboração&lt;/strong&gt; com outros desenvolvedores e &lt;strong&gt;reduz o risco de bugs&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Neste artigo, vou compartilhar &lt;strong&gt;5 boas práticas essenciais&lt;/strong&gt; que todo desenvolvedor deve adotar ao escrever JavaScript. Essas dicas vão desde o &lt;strong&gt;uso correto de variáveis&lt;/strong&gt; até a &lt;strong&gt;modularização do código&lt;/strong&gt;, para garantir que seu código seja mais &lt;strong&gt;eficiente&lt;/strong&gt;, &lt;strong&gt;organizado&lt;/strong&gt; e &lt;strong&gt;fácil de entender&lt;/strong&gt;. Vamos lá?&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;1. Use &lt;code&gt;const&lt;/code&gt; e &lt;code&gt;let&lt;/code&gt; ao invés de &lt;code&gt;var&lt;/code&gt;:&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Você já deve ter ouvido isso inúmeras vezes, mas &lt;strong&gt;acredite&lt;/strong&gt;, essa é uma  dica essencial para &lt;strong&gt;adotar&lt;/strong&gt; no seu dia a dia. &lt;/p&gt;

&lt;p&gt;Pense no &lt;code&gt;var&lt;/code&gt; como aquela pessoa que não respeita limites, ele tem permissão para circular por todo o código, ignorando barreiras como se elas não existissem (no caso, o escopo de bloco). Imagine declarar uma variável dentro de um loop e, de repente, ela aparece fora dele como se nada tivesse acontecido — &lt;strong&gt;caos total&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Agora, com &lt;code&gt;const&lt;/code&gt; e &lt;code&gt;let&lt;/code&gt;, você impõe essas barreiras. &lt;strong&gt;Let&lt;/strong&gt; se comporta como aquele colega que sabe respeitar os limites, enquanto &lt;strong&gt;const&lt;/strong&gt; é aquele amigo teimoso que nunca muda de opinião. Isso significa que, além de melhorar a organização do seu código, você evita bugs difíceis de rastrear que acontecem por causa dessa “liberdade” do &lt;code&gt;var&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Então, utilizar o &lt;code&gt;var&lt;/code&gt; em navegadores modernos é basicamente pedir para criar &lt;strong&gt;bugs&lt;/strong&gt;!&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Com var (confusão garantida)&lt;/span&gt;
&lt;span class="k"&gt;for &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// 0, 1, 2&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// 3 (Você esperava que o i ficasse apenas dentro do loop? Pois é... surpresa!)&lt;/span&gt;


&lt;span class="c1"&gt;// Com let (tudo nos seus devidos lugares)&lt;/span&gt;
&lt;span class="k"&gt;for &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// 0, 1, 2&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// Erro: i is not defined (como deveria ser!)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Dica&lt;/strong&gt;: Use &lt;code&gt;const&lt;/code&gt; para variáveis que não vão mudar de valor, e &lt;code&gt;let&lt;/code&gt; para aquelas que podem ser reatribuídas.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Exemplo&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Usando const (valor constante)&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;pi&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mf"&gt;3.14159&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;pi&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// 3.14159&lt;/span&gt;

&lt;span class="c1"&gt;// Tentar reatribuir um valor a pi causará erro&lt;/span&gt;
&lt;span class="c1"&gt;// pi = 3.14; // Erro: Assignment to constant variable.&lt;/span&gt;

&lt;span class="c1"&gt;// Usando let para valores que mudam&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;totalPedidos&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="nx"&gt;totalPedidos&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c1"&gt;// Novo pedido chegou&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;`Total de pedidos: &lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;totalPedidos&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;`&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// Total de pedidos: 1&lt;/span&gt;

&lt;span class="c1"&gt;// Um novo pedido chegou, então podemos atualizar a variável&lt;/span&gt;
&lt;span class="nx"&gt;totalPedidos&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;`Total de pedidos: &lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;totalPedidos&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;`&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// Total de pedidos: 2&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h3&gt;
  
  
  &lt;strong&gt;2. Destruturar Objetos e Arrays&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Destruturar&lt;/strong&gt; objetos e arrays é como abrir um presente e pegar direto o que te interessa, sem ter que vasculhar tudo. Em vez de acessar cada propriedade ou item individualmente, com a destruturação você pega exatamente o que precisa de forma &lt;strong&gt;rápida&lt;/strong&gt; e &lt;strong&gt;elegante&lt;/strong&gt;. — Muito mais prático, né?&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Sem destruturação (muito trabalho)&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;pessoa&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;nome&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;João&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;idade&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;30&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;profissão&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Engenheiro&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="p"&gt;};&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;nome&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;pessoa&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;nome&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;idade&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;pessoa&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;idade&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;nome&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;idade&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// João 30&lt;/span&gt;

&lt;span class="c1"&gt;// Com destruturação (muito mais simples)&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;nome&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;idade&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;pessoa&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;nome&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;idade&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// João 30&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;E a mesma mágica acontece com arrays. Vamos supor que você tem uma lista de valores e só quer os primeiros elementos. Você não precisa ficar pegando item por item. Com a destruturação, você pode pegar o que quiser de forma direta.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Sem destruturação&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;numeros&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;20&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;30&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;40&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;primeiro&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;numeros&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;segundo&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;numeros&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;primeiro&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;segundo&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// 10 20&lt;/span&gt;

&lt;span class="c1"&gt;// Com destruturação&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;primeiro&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;segundo&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;numeros&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;primeiro&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;segundo&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// 10 20&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  &lt;strong&gt;Dica&lt;/strong&gt;:
&lt;/h3&gt;

&lt;p&gt;Use a destruturação sempre que precisar acessar múltiplos valores em um objeto ou array. Isso deixa o código mais &lt;strong&gt;limpo&lt;/strong&gt; e &lt;strong&gt;legível&lt;/strong&gt;.&lt;/p&gt;




&lt;h3&gt;
  
  
  3. Evite o uso excessivo de funções anônimas
&lt;/h3&gt;

&lt;p&gt;Usar funções anônimas pode parecer conveniente, mas é como dar instruções sem dizer quem é o responsável. Quando tudo está funcionando corretamente, é mil maravilhas. Mas quando algo dá errado, quem você vai culpar? Fica difícil encontrar o problema. Nomear suas funções dá clareza ao código e facilita a depuração.&lt;/p&gt;

&lt;p&gt;Nomeie suas funções e tenha controle total sobre o que cada uma faz.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Função anônima (sem nome, sem controle)&lt;/span&gt;
&lt;span class="nf"&gt;setTimeout&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Função anônima em ação&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="mi"&gt;1000&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="c1"&gt;// Função nomeada (muito mais organizado)&lt;/span&gt;
&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;exibeMensagem&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Função com nome&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nf"&gt;setTimeout&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;exibeMensagem&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;1000&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt;&lt;br&gt;
Sempre que possível, nomeie suas funções de &lt;strong&gt;forma clara&lt;/strong&gt; e &lt;strong&gt;descritiva&lt;/strong&gt;. Um código mais legível é muito mais fácil de realizar manutenção.&lt;/p&gt;


&lt;h3&gt;
  
  
  4. Prefira &lt;code&gt;===&lt;/code&gt; ao invés de &lt;code&gt;==&lt;/code&gt;
&lt;/h3&gt;

&lt;p&gt;Sabe aquele ditado de &lt;strong&gt;&lt;em&gt;"Nem tudo que reluz é ouro"?&lt;/em&gt;&lt;/strong&gt; Isso é exatamente o que acontece com &lt;code&gt;==&lt;/code&gt;. Ele faz &lt;strong&gt;conversões implícitas&lt;/strong&gt;, mas acaba trazendo resultados &lt;strong&gt;inesperados&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;Já o &lt;code&gt;===&lt;/code&gt; não tem essa de &lt;em&gt;&lt;strong&gt;"vamos dar um jeitinho"&lt;/strong&gt;&lt;/em&gt;. Ele faz uma &lt;strong&gt;comparação estrita&lt;/strong&gt;, garantindo que o &lt;strong&gt;valor&lt;/strong&gt; e o &lt;strong&gt;tipo&lt;/strong&gt; sejam exatamente iguais.&lt;/p&gt;

&lt;p&gt;Se &lt;code&gt;==&lt;/code&gt; fosse um detetive, ele aceitaria qualquer pista, mesmo que não fosse confiável. Já o &lt;code&gt;===&lt;/code&gt; só trabalha com provas sólidas. Ele garante que não haverá confusões no caminho.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;
&lt;span class="c1"&gt;// Comparação com == (pode ser traiçoeiro)&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;1&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// true (conversão implícita de tipo)&lt;/span&gt;

&lt;span class="c1"&gt;// Comparação com === (comparação estrita)&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="o"&gt;===&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;1&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// false (os tipos são diferentes e não são convertidos)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt;&lt;br&gt;
Use sempre &lt;code&gt;===&lt;/code&gt; para garantir que você está comparando tanto o valor quanto o tipo corretamente. Evita "surpresas" e ajuda a prevenir bugs.&lt;/p&gt;


&lt;h3&gt;
  
  
  5. Modularize seu código
&lt;/h3&gt;

&lt;p&gt;Modularizar seu código é como organizar suas ferramentas em caixas separadas. Em vez de ter tudo jogado em um só lugar, você separa cada parte em "caixas" (ou módulos), e só pega o que vai utilizar. Isso deixa seu projeto mais organizado, fácil de manter e até mais rápido de entender.&lt;/p&gt;

&lt;p&gt;Em vez de ter um arquivo gigantesco com funções e variáveis espalhadas, você pode dividir tudo em módulos reutilizáveis. É como ter uma oficina bem organizada, onde cada ferramenta tem seu devido lugar.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;
&lt;span class="c1"&gt;// Criando um módulo (operacoes.js)&lt;/span&gt;
&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;soma&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;b&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;b&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;subtracao&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;b&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;b&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;// Usando o módulo em outro arquivo (app.js)&lt;/span&gt;
&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;soma&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;subtracao&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;./operacoes.js&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;soma&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt; &lt;span class="c1"&gt;// 8&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;subtracao&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt; &lt;span class="c1"&gt;// 2&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt;&lt;br&gt;
Mantenha seu código organizado separando funcionalidades em módulos. Isso facilita a manutenção, o reuso e a colaboração em projetos maiores, onde várias partes do código precisam se comunicar de forma clara.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Boas práticas em JavaScript não só melhoram a organização e clareza do código, como também facilitam a manutenção. Aplicar essas cinco dicas pode fazer uma grande diferença positiva no seu código.&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>beginners</category>
      <category>programming</category>
    </item>
  </channel>
</rss>
