<?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: Guilherme Miserski</title>
    <description>The latest articles on DEV Community by Guilherme Miserski (@g7miserski).</description>
    <link>https://dev.to/g7miserski</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%2F1113553%2F28e5b00d-8074-48bb-a6da-d39235153276.png</url>
      <title>DEV Community: Guilherme Miserski</title>
      <link>https://dev.to/g7miserski</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/g7miserski"/>
    <language>en</language>
    <item>
      <title>As vantagens de se usar o early return</title>
      <dc:creator>Guilherme Miserski</dc:creator>
      <pubDate>Fri, 24 May 2024 15:02:50 +0000</pubDate>
      <link>https://dev.to/g7miserski/as-vantagens-de-se-usar-o-early-return-o8c</link>
      <guid>https://dev.to/g7miserski/as-vantagens-de-se-usar-o-early-return-o8c</guid>
      <description>&lt;p&gt;🌟 &lt;strong&gt;Aprimore a legibilidade e mantenha seu código limpo com "early return"!&lt;/strong&gt; 🌟&lt;/p&gt;

&lt;p&gt;A técnica de "early return" nos permite verificar e retornar logo no início do programa, melhorando a manutenção, legibilidade e, em alguns casos, até a performance do código. 🚀&lt;/p&gt;

&lt;h3&gt;
  
  
  Vantagens do "early return":
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Legibilidade&lt;/strong&gt;: Código mais fácil de ler e entender, evitando aninhamentos profundos.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Redução da Complexidade&lt;/strong&gt;: Simplifica a lógica e facilita a manutenção.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Evita Códigos Desnecessários&lt;/strong&gt;: Previne a execução de trechos desnecessários, melhorando a performance.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Veja a diferença com um exemplo prático:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sem "early return":&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;check_number&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;n&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;n&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="n"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Positive&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
    &lt;span class="k"&gt;else&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;n&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
            &lt;span class="n"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Negative&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
        &lt;span class="k"&gt;else&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
            &lt;span class="n"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Zero&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;result&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Com "early return":&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;check_number&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;n&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;n&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Positive&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;n&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Negative&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Zero&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Muito mais simples e legível! 📝&lt;/p&gt;

&lt;p&gt;Claro, nem sempre o "early return" é a melhor opção. Avalie cada caso para encontrar a melhor solução. Tem algo a adicionar ou discordar? Vamos aprender juntos nos comentários! 💬&lt;/p&gt;

</description>
      <category>programming</category>
      <category>python</category>
      <category>webdev</category>
    </item>
    <item>
      <title>O que um juninho entende sobre Clean Code</title>
      <dc:creator>Guilherme Miserski</dc:creator>
      <pubDate>Tue, 04 Jul 2023 23:29:50 +0000</pubDate>
      <link>https://dev.to/g7miserski/o-que-um-juninho-entende-sobre-clean-code-4cok</link>
      <guid>https://dev.to/g7miserski/o-que-um-juninho-entende-sobre-clean-code-4cok</guid>
      <description>&lt;p&gt;Como um novato nessa área de programação, que mal sabe por onde começar em meio a tanta informação, deparei-me com um termo muito comum nos requisitos de emprego: o famoso "Clean code". Então, de forma simples, o que um iniciante como eu pode fazer para entender algo que parece tão confuso, já que durante os cursos raramente nos deparamos com os problemas que essa metodologia visa resolver? Mas vamos lá, primeiro precisamos entender o que é esse tal "maldito" Clean code e por que as empresas enfatizam tanto a necessidade de conhecê-lo, pelo menos o básico, para começar.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--rQwFGDF3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v4lm5cvudep1sjg43r9w.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--rQwFGDF3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v4lm5cvudep1sjg43r9w.jpeg" alt="Clean Soap Code" width="700" height="438"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Basicamente, o Clean code é um "estilo" de programação que visa manter a legibilidade, simplicidade e manutenibilidade do nosso código. Mas como podemos alcançar isso?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Legibilidade&lt;/strong&gt;&lt;br&gt;
Aqui entra a escolha de variáveis que sejam claras e descritivas. Por exemplo, em vez de nomear uma variável para definir a altura como 'a', por que não simplesmente escrever 'altura'? No entanto, a legibilidade não se limita apenas a essas variáveis. Escrever um código cheio de ternários que ninguém consegue entender será mais claro do que um 'if' ou 'else'? A legibilidade está intimamente ligada à simplicidade!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Simplicidade&lt;/strong&gt;&lt;br&gt;
Modularize seu código e evite criar abstrações complexas. Por que complicar, meu chapa? A vida é simples e direta. Sempre que possível, mantenha seu código simples para que outras pessoas possam entender e dar manutenção. Quanto menos comentários forem necessários para explicar suas soluções temporárias, mais legível seu código ficará. Eu entendo que, como iniciante, pode ser difícil refatorar e simplificar o código, mas à medida que você tenta, com o tempo, vai melhorando.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Testabilidade&lt;/strong&gt;&lt;br&gt;
No início, pensar em todos os casos de uso para testar pode ser cansativo, não é mesmo? Eu entendo. Mas lembre-se de que, quanto mais modular for seu código, mais testável ele será. Se você puder dividi-lo em partes menores, os testes se tornarão mais simples. Faça uma pesquisa e aprenda como implementar casos de uso. Isso facilitará muito o entendimento de como um código bem dividido é benéfico para a manutenção do produto. (Se você programa no VSCode, procure pela extensão CodiumAI. Ela é muito útil para realizar testes básicos em métodos ou classes! Mas use-a com cuidado, para entender o propósito dos testes e ter uma direção sobre o que precisa ser testado. Quanto mais você souber sobre as regras de negócio do que está desenvolvendo, mais fácil será.)&lt;/p&gt;

&lt;p&gt;Para concluir, aproveite e leia o livro Clean code. É ótimo para quem está começando na área. Talvez seja um pouco difícil entender os conceitos no início, mas quando você estiver envolvido em um projeto, tudo fará mais sentido.&lt;/p&gt;

&lt;p&gt;Agradeço a todos que leram até aqui. Se você é um desenvolvedor mais experiente e quiser acrescentar algo, fique à vontade. Se achar que falei besteira, também não tem problema. O que importa é nossa evolução, e todas as opiniões são bem-vindas!&lt;/p&gt;

</description>
      <category>braziliandevs</category>
      <category>codenewbie</category>
      <category>cleancode</category>
    </item>
  </channel>
</rss>
