<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Boas Práticas De Programação on Tiago Costa</title>
    <link>https://tiagoscosta.tpps.com.br/categories/boas-pr%C3%A1ticas-de-programa%C3%A7%C3%A3o/</link>
    <description>Recent content in Boas Práticas De Programação on Tiago Costa</description>
    <generator>Hugo</generator>
    <language>pt-br</language>
    <lastBuildDate>Mon, 27 Apr 2026 12:35:00 +0000</lastBuildDate>
    <atom:link href="https://tiagoscosta.tpps.com.br/categories/boas-pr%C3%A1ticas-de-programa%C3%A7%C3%A3o/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>📝 Arquitetura de Software: Do Macro ao Micro</title>
      <link>https://tiagoscosta.tpps.com.br/posts/-arquitetura-de-software-do-macro-ao-micro/</link>
      <pubDate>Mon, 27 Apr 2026 12:35:00 +0000</pubDate>
      <guid>https://tiagoscosta.tpps.com.br/posts/-arquitetura-de-software-do-macro-ao-micro/</guid>
      <description>&lt;p&gt;No desenvolvimento de sistemas modernos, a palavra &amp;ldquo;arquitetura&amp;rdquo; pode gerar confusão por ser aplicada em diferentes níveis. Para construir sistemas robustos, é preciso entender que a arquitetura não é uma escolha única, mas uma composição de decisões que vão desde a infraestrutura global até a organização das pastas no seu editor de código.&lt;/p&gt;&#xA;&lt;h2 id=&#34;1-arquitetura-de-sistema-vs-arquitetura-de-aplicação&#34;&gt;&#xA;  1. Arquitetura de Sistema vs. Arquitetura de Aplicação&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#1-arquitetura-de-sistema-vs-arquitetura-de-aplica%c3%a7%c3%a3o&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link para o cabeçalho&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link para o cabeçalho&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Antes de escolher um padrão, precisamos diferenciar o &lt;strong&gt;escopo&lt;/strong&gt; da decisão:&lt;/p&gt;</description>
    </item>
    <item>
      <title>📝 Explorando o DDD no Ecossistema Laravel: Da Teoria à Prática</title>
      <link>https://tiagoscosta.tpps.com.br/posts/-explorando-o-ddd-no-ecossistema-laravel-da-teoria-%C3%A0-pr%C3%A1tica/</link>
      <pubDate>Thu, 23 Apr 2026 18:35:00 +0000</pubDate>
      <guid>https://tiagoscosta.tpps.com.br/posts/-explorando-o-ddd-no-ecossistema-laravel-da-teoria-%C3%A0-pr%C3%A1tica/</guid>
      <description>&lt;p&gt;O &lt;strong&gt;Domain-Driven Design (DDD)&lt;/strong&gt; não é apenas um padrão de pastas, mas uma filosofia de design de software que coloca a &lt;strong&gt;Regra de Negócio&lt;/strong&gt; (o Domínio) como o centro de todas as decisões. No Laravel, aplicar DDD significa elevar o nível de maturidade do código, garantindo que o framework sirva à aplicação, e não o contrário.&lt;/p&gt;&#xA;&lt;h2 id=&#34;1-o-que-é-ddd-e-por-que-aplicá-lo&#34;&gt;&#xA;  1. O que é DDD e por que aplicá-lo?&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#1-o-que-%c3%a9-ddd-e-por-que-aplic%c3%a1-lo&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link para o cabeçalho&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link para o cabeçalho&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;No desenvolvimento tradicional (MVC puro), é comum encontrarmos lógica de banco de dados em Controllers ou Models gigantes. O DDD propõe o desacoplamento. Ele divide o sistema em camadas para que, se você precisar trocar o banco de dados ou a forma como um comando é disparado, a regra de negócio permaneça intacta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>📝 Estratégias de Otimização: Como &#34;Emagrecer&#34; seu App Angular com Bundle Analyzer</title>
      <link>https://tiagoscosta.tpps.com.br/posts/-estrat%C3%A9gias-de-otimiza%C3%A7%C3%A3o-como-emagrecer-seu-app-angular-com-bundle-analyzer/</link>
      <pubDate>Sat, 07 Feb 2026 10:09:00 +0000</pubDate>
      <guid>https://tiagoscosta.tpps.com.br/posts/-estrat%C3%A9gias-de-otimiza%C3%A7%C3%A3o-como-emagrecer-seu-app-angular-com-bundle-analyzer/</guid>
      <description>&lt;p&gt;No desenvolvimento de aplicações modernas, é fácil perder o controle do tamanho do pacote final. Bibliotecas que prometem facilitar nossa vida podem, silenciosamente, inflar o main.js, prejudicando a experiência do usuário, especialmente em conexões móveis.&lt;/p&gt;&#xA;&lt;p&gt;Recentemente, ao analisar o build do um projeto, identificamos um pacote inicial de &lt;strong&gt;1.45&lt;/strong&gt; MB. Através do &lt;strong&gt;Webpack Bundle Analyzer&lt;/strong&gt;, conseguimos visualizar os &amp;ldquo;vilões&amp;rdquo; da performance e traçar um plano de ação.&lt;/p&gt;&#xA;&lt;h2 id=&#34;-passo-a-passo-como-instalar-e-usar-o-analisador&#34;&gt;&#xA;  🛠️ Passo a Passo: Como instalar e usar o Analisador&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#-passo-a-passo-como-instalar-e-usar-o-analisador&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link para o cabeçalho&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link para o cabeçalho&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Para realizar esse &amp;ldquo;raio-X&amp;rdquo; na sua própria aplicação, siga estes passos:&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
