<?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: Thiago</title>
    <description>The latest articles on DEV Community by Thiago (@thusgo).</description>
    <link>https://dev.to/thusgo</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4139851%2F68c7de4b-314b-4c7f-8b37-684d6a5032b5.jpg</url>
      <title>DEV Community: Thiago</title>
      <link>https://dev.to/thusgo</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/thusgo"/>
    <language>en</language>
    <item>
      <title>Dicionário Técnico Parte 2: Containers, Shell e Web Components</title>
      <dc:creator>Thiago</dc:creator>
      <pubDate>Wed, 23 Sep 2026 17:34:55 +0000</pubDate>
      <link>https://dev.to/thusgo/dicionario-tecnico-parte-2-containers-shell-e-web-components-3p84</link>
      <guid>https://dev.to/thusgo/dicionario-tecnico-parte-2-containers-shell-e-web-components-3p84</guid>
      <description>&lt;p&gt;Dando sequência ao nosso dicionário técnico, esta segunda parte aborda dúvidas comuns que surgem ao longo do projeto e inclui conceitos fundamentais para entender completamente os termos de infraestrutura e integração discutidos anteriormente. &lt;/p&gt;

&lt;h2&gt;
  
  
  💡 Como usar este dicionário
&lt;/h2&gt;

&lt;p&gt;Mantenha a mesma estratégia: leia o conceito, tente explicá-lo com suas próprias palavras e imagine como isso se aplica no código ou na arquitetura. A tecnologia faz muito mais sentido quando entendemos o problema real que ela tenta resolver.&lt;/p&gt;




&lt;h2&gt;
  
  
  🛠️ Palavras Técnicas
&lt;/h2&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Shell&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; o ambiente de texto onde conversamos com o sistema operacional.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;O shell é uma interface de linha de comando (CLI) que lê os comandos que você digita e diz ao sistema operacional o que fazer. Quando você abre o terminal no VS Code ou no próprio sistema para rodar um comando do Git, inicializar um servidor local ou usar o &lt;code&gt;curl&lt;/code&gt; (visto no dicionário anterior), você está interagindo através do shell.&lt;br&gt;
🔗 &lt;a href="https://www.hostinger.com.br/tutoriais/o-que-e-shell" rel="noopener noreferrer"&gt;Aprofundamento sobre Shell&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Container&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; uma "caixa" padrão e isolada que empacota a sua aplicação.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Para entender o que o Kubernetes e o OpenShift gerenciam, precisamos entender primeiro o que é um container. Ele é um pacote de software que contém o seu código e absolutamente tudo que ele precisa para rodar (bibliotecas, configurações e ferramentas). Isso resolve o clássico problema do "na minha máquina funciona", garantindo que a aplicação rode perfeitamente igual, seja no seu computador local ou no servidor em produção.&lt;br&gt;
🔗 &lt;a href="https://www.ibm.com/br-pt/think/topics/containers" rel="noopener noreferrer"&gt;Aprofundamento sobre Containers&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Web Component&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; blocos de construção independentes e reutilizáveis para a interface (frontend).&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Web Components são um conjunto de padrões da web que permitem criar elementos customizados e reutilizáveis no HTML (como uma tag &lt;code&gt;&amp;lt;meu-card-usuario&amp;gt;&lt;/code&gt;), com seu próprio estilo e comportamento isolados. Ao construir aplicações em frameworks modernos como Angular, a lógica de componentização é o coração da arquitetura: você cria pequenos blocos visuais independentes e os junta para compor uma tela completa, evitando repetição de código.&lt;br&gt;
🔗 &lt;a href="https://developer.mozilla.org/pt-BR/docs/Web/API/Web_components" rel="noopener noreferrer"&gt;Aprofundamento sobre Web Components&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;API (Application Programming Interface)&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; a "ponte" de comunicação entre sistemas diferentes.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;em&gt;(Termo essencial para entender Swagger, Postman, Gateway e Apache Camel)&lt;/em&gt;. &lt;br&gt;
Uma API é um conjunto de regras que permite que um software converse com outro. Imagine que a interface visual da sua aplicação seja um cliente em um restaurante, e o banco de dados (fornecido, por exemplo, por um JSON Server) seja a cozinha. A API atua como o garçom: ela recebe o seu pedido, leva até o backend e traz a resposta (os dados) no formato correto.&lt;br&gt;
🔗 &lt;a href="https://www.redhat.com/pt-br/topics/api/what-are-application-programming-interfaces" rel="noopener noreferrer"&gt;Aprofundamento sobre APIs&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;CI/CD (Continuous Integration / Continuous Delivery)&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; a esteira automatizada de produção do seu código.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;em&gt;(Termo essencial para o conceito de "Pipeline do GitLab" fazer sentido)&lt;/em&gt;. &lt;br&gt;
Integração Contínua (CI) é a prática de juntar o código de vários desenvolvedores frequentemente e testá-lo de forma automática. Entrega Contínua (CD) é automatizar o envio desse código aprovado para os ambientes de teste ou produção (o Deploy). Basicamente, é o processo que automatiza o trabalho chato e repetitivo de testar e publicar o software a cada nova atualização.&lt;br&gt;
🔗 &lt;a href="https://www.redhat.com/pt-br/topics/devops/what-is-ci-cd" rel="noopener noreferrer"&gt;Aprofundamento sobre CI/CD&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Teste Unitário&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; avaliação da menor parte possível do seu código.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Relembrando e aprofundando: o teste unitário foca em isolar uma pequena unidade do sistema (como uma única função que valida um formulário ou formata uma data) para verificar se ela devolve o resultado esperado. Ao construir uma aplicação, testar essas pequenas partes isoladamente garante que as regras de negócio básicas estão corretas antes de conectar a aplicação inteira ao servidor ou banco de dados.&lt;br&gt;
🔗 &lt;a href="https://www.devmedia.com.br/teste-unitario/41234" rel="noopener noreferrer"&gt;Aprofundamento sobre Testes Unitários&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>iniciantes</category>
      <category>infraestrutura</category>
      <category>frontend</category>
    </item>
    <item>
      <title>Dicionário Técnico: Infraestrutura, APIs e Boas Práticas</title>
      <dc:creator>Thiago</dc:creator>
      <pubDate>Wed, 23 Sep 2026 17:26:23 +0000</pubDate>
      <link>https://dev.to/thusgo/dicionario-tecnico-infraestrutura-apis-e-boas-praticas-1ji7</link>
      <guid>https://dev.to/thusgo/dicionario-tecnico-infraestrutura-apis-e-boas-praticas-1ji7</guid>
      <description>&lt;p&gt;Este dicionário técnico organiza termos de infraestrutura, APIs, integração e boas práticas de desenvolvimento. Ele foi pensado para consulta rápida durante o projeto, onde cada termo traz uma definição simples e um link para aprofundamento.&lt;/p&gt;

&lt;h2&gt;
  
  
  💡 Como usar este dicionário
&lt;/h2&gt;

&lt;p&gt;A melhor forma de usar este material é não tentar decorar todas as definições de uma vez. A ideia é consultar os termos sempre que surgirem em reuniões, tarefas, documentações ou conversas técnicas.&lt;/p&gt;

&lt;p&gt;Uma boa estratégia de estudo é ler o conceito, explicá-lo com suas próprias palavras e pensar em um exemplo de onde ele poderia aparecer no projeto. Assim, em vez de apenas decorar nomes como Pipeline, Deploy, Kubernetes, Postman ou Regex, você passa a entender qual é a função de cada um e como eles se relacionam no dia a dia do desenvolvimento.&lt;/p&gt;




&lt;h2&gt;
  
  
  🛠️ Palavras Técnicas
&lt;/h2&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Cluster&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; ambiente onde as aplicações são executadas e gerenciadas.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Um cluster é, de forma simples, um conjunto de computadores ou servidores que trabalham juntos, de forma coordenada. No contexto de infraestrutura, também pode indicar uma rede de empresas, universidades e especialistas que cooperam em um mesmo tema (por exemplo, um cluster cibernético reúne organizações que colaboram em cibersegurança). No contexto de Kubernetes e OpenShift, o termo cluster provavelmente se refere a um cluster Kubernetes: o ambiente responsável por executar e gerenciar as aplicações.&lt;br&gt;
🔗 &lt;a href="https://www.ibm.com/br-pt/think/topics/cluster-computing" rel="noopener noreferrer"&gt;Aprofundamento sobre Cluster&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Gateway&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; porta de entrada que encaminha a comunicação entre sistema.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;É a porta de passagem entre redes ou sistemas diferentes. Ele recebe uma solicitação, encaminha os dados para o destino correto e pode traduzir protocolos quando necessário. O roteador de casa, por exemplo, costuma agir como gateway para a internet; em APIs, um API Gateway pode direcionar chamadas para os serviços corretos.&lt;br&gt;
🔗 &lt;a href="https://www.alura.com.br/artigos/gateway?srsltid=AfmBOop0MoJ-fveJzOe0lbPsNd2hQAJI-nizDj3bxrCoioGsgzdGWHkT" rel="noopener noreferrer"&gt;Aprofundamento sobre Gateway&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Kubernetes (K8s)&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; plataforma que organiza e gerencia aplicações em containers.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;É uma plataforma utilizada para organizar e gerenciar aplicações que rodam em containers. Dentro dela é possível controlar onde uma aplicação será executada, quantas cópias dela devem existir e como ela será atualizada, mantendo esse estado desejado de forma automática.&lt;br&gt;
🔗 &lt;a href="https://www.ibm.com/br-pt/think/topics/docker" rel="noopener noreferrer"&gt;Aprofundamento sobre Kubernetes&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Deploy&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; processo de colocar ou atualizar uma aplicação no ambiente.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Deploy é o processo de colocar uma aplicação para funcionar em um ambiente onde ela poderá ser utilizada. Depois de desenvolver e testar uma aplicação, é necessário disponibilizá-la em um servidor ou plataforma. Esse processo de publicação pode envolver copiar os arquivos, configurar o ambiente, instalar dependências e iniciar a aplicação. O deploy também pode ser feito quando uma nova versão do sistema precisa substituir a versão anterior.&lt;br&gt;
🔗 &lt;a href="https://www.geekhunter.com/pt/blog/o-que-e-deploy/" rel="noopener noreferrer"&gt;Aprofundamento sobre Deploy&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Red Hat OpenShift&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; plataforma baseada em Kubernetes para gerenciar aplicações.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;É uma plataforma empresarial baseada em Kubernetes, usada para desenvolver, publicar, proteger e administrar aplicações em containers. Ela adiciona interface gráfica, ferramentas de operação e padrões de segurança. Ou seja: Kubernetes é a base, e o OpenShift é uma plataforma mais completa construída sobre essa base.&lt;br&gt;
🔗 &lt;a href="https://www.treinaweb.com.br/blog/o-que-e-o-openshift" rel="noopener noreferrer"&gt;Aprofundamento sobre OpenShift&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Pipeline do GitLab&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; sequência automática de etapas do projeto.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;É um fluxo automático de tarefas de integração e entrega contínua (CI/CD) normalmente definido no arquivo &lt;code&gt;.gitlab-ci.yml&lt;/code&gt;. Uma pipeline pode instalar dependências, construir o projeto, executar testes e realizar o deploy. Cada tarefa dentro dela é chamada de job, e cada job é executado por um runner.&lt;br&gt;
🔗 &lt;a href="https://docs.gitlab.com/ci/pipelines/" rel="noopener noreferrer"&gt;Aprofundamento sobre Pipeline&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Swagger / OpenAPI&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; documentação que mostra como uma API funciona.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;OpenAPI é um formato usado para descrever APIs REST: quais endpoints existem, quais dados são enviados, quais respostas são recebidas e como funciona a autenticação. Swagger é o conjunto de ferramentas (editor, UI, geração de código) construído em torno dessa especificação. Funciona como um cardápio, mostrando tudo o que a API oferece.&lt;br&gt;
🔗 [Aprofundamento sobre OpenAPI](&lt;a href="https://www.ibm.com/br-pt/think/topics/open-api" rel="noopener noreferrer"&gt;https://www.ibm.com/br-pt/think/topics/open-api&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Postman&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; ferramenta visual para testar APIs.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;É um cliente gráfico usado para testar APIs. Nele é possível escolher o método da requisição, informar a URL, adicionar parâmetros, cabeçalhos e corpo, configurar autenticação e analisar a resposta recebida. Também permite organizar requisições em coleções e criar testes automáticos.&lt;br&gt;
🔗 &lt;a href="https://www.hashtagtreinamentos.com/como-testar-apis-javascript" rel="noopener noreferrer"&gt;Aprofundamento sobre Postman&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;curl&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; ferramenta para fazer requisições pelo terminal.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;É uma ferramenta de linha de comando usada para transferir dados e chamar APIs diretamente pelo terminal, informando endereço, método, cabeçalhos e dados da requisição. Exemplo: &lt;code&gt;curl https://api.exemplo.com/clientes&lt;/code&gt;.&lt;br&gt;
🔗 &lt;a href="https://brightdata.com.br/blog/dados-do-site/what-is-curl" rel="noopener noreferrer"&gt;Aprofundamento sobre curl&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Apache Camel&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; ferramenta que ajuda sistemas diferentes a se comunicarem.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;É um framework de integração que conecta sistemas diferentes por meio de rotas. Uma mensagem pode chegar por uma API, ser validada ou transformada, e depois seguir para outro serviço, banco de dados ou fila. Funciona como um centro de distribuição de informações entre sistemas.&lt;br&gt;
🔗 &lt;a href="https://www.campuscode.com.br/conteudos/comandos-curl-para-testar-requisicoes-api" rel="noopener noreferrer"&gt;Aprofundamento sobre Apache Camel&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Web Companion&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; programa relacionado à navegação e segurança.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;É o nome de um software da Adaware divulgado como proteção para navegação — não é uma ferramenta de programação. É classificado como programa potencialmente indesejado (PUP) por alterar configurações de pesquisa do navegador sem autorização clara. Se ele aparecer instalado sem que você se lembre da instalação, verifique a origem e, em ambiente corporativo, consulte o suporte de TI.&lt;br&gt;
🔗 &lt;a href="https://www.kaspersky.com.br/resource-center/definitions/what-is-pup-pua" rel="noopener noreferrer"&gt;Aprofundamento sobre PUP&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  🧠 Conceitos
&lt;/h2&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Regex (expressão regular)&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; padrão usado para encontrar ou validar textos.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;É a abreviação de regular expression. Trata-se de um padrão usado para localizar, validar, extrair ou substituir partes de um texto — por exemplo, verificar se um CEP ou um e-mail está no formato esperado. Atenção à grafia: o correto é regex, e não "rejex".&lt;br&gt;
🔗 &lt;a href="https://www.devmedia.com.br/iniciando-expressoes-regulares/6557" rel="noopener noreferrer"&gt;Aprofundamento sobre Regex&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Teste unitário&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; teste que verifica uma pequena parte do código.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;É um teste automatizado que verifica uma pequena unidade do código — como uma função ou método — geralmente isolada de banco de dados e rede. Exemplo: confirmar que &lt;code&gt;somar(2, 3)&lt;/code&gt; devolve &lt;code&gt;5&lt;/code&gt;. Isso ajuda a encontrar erros mais cedo e dá mais confiança para refatorar o código no futuro.&lt;br&gt;
🔗 &lt;a href="https://www.devmedia.com.br/e-ai-como-voce-testa-seus-codigos/39478" rel="noopener noreferrer"&gt;Aprofundamento sobre Testes Unitários&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Código limpo (Clean Code)&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; código organizado e fácil de entender e modificar.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;É um código fácil de ler, entender, testar e modificar. Utiliza nomes claros, funções com responsabilidade bem definida, formatação consistente e evita repetições desnecessárias. Código limpo não é o código mais curto, e sim aquele que comunica melhor sua intenção.&lt;br&gt;
🔗 &lt;a href="https://programathor.com.br/blog/clean-code-como-escrever-codigo-legivel-e-sustentavel/" rel="noopener noreferrer"&gt;Aprofundamento sobre Clean Code&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>iniciantes</category>
      <category>infraestrutura</category>
      <category>backend</category>
    </item>
  </channel>
</rss>
