<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Duck Typing on Python Brasil — Aprenda Python em Português</title>
    <link>https://python.dev.br/tags/duck-typing/</link>
    <description>Recent content in Duck Typing on Python Brasil — Aprenda Python em Português</description>
    <generator>Hugo</generator>
    <language>pt-br</language>
    <lastBuildDate>Wed, 01 Apr 2026 08:05:06 -0300</lastBuildDate>
    <atom:link href="https://python.dev.br/tags/duck-typing/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Python Protocols: Tipagem Estrutural Sem Herança — 2026 | python.dev.br</title>
      <link>https://python.dev.br/blog/python-protocols-tipagem-estrutural/</link>
      <pubDate>Sun, 29 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://python.dev.br/blog/python-protocols-tipagem-estrutural/</guid>
      <description>&lt;p&gt;Python sempre foi uma linguagem de &lt;strong&gt;duck typing&lt;/strong&gt;: se um objeto tem os métodos certos, ele funciona — independente da classe ou herança. Mas quando você adiciona &lt;a href=&#34;https://python.dev.br/blog/tipagem-estatica-python-mypy/&#34;&gt;type hints&lt;/a&gt; ao código, surge um problema: como tipar algo que depende de comportamento, e não de uma classe específica?&lt;/p&gt;&#xA;&lt;p&gt;A resposta veio com a PEP 544 no Python 3.8: &lt;strong&gt;Protocol&lt;/strong&gt; — uma forma de definir interfaces baseadas em estrutura, não em herança. Neste artigo, vamos explorar como Protocols funcionam, quando usá-los, e como eles transformam a qualidade do código Python.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Polimorfismo em Python: O que É e Como Funciona | Python Brasil</title>
      <link>https://python.dev.br/glossario/polimorfismo/</link>
      <pubDate>Wed, 22 Oct 2025 00:00:00 +0000</pubDate>
      <guid>https://python.dev.br/glossario/polimorfismo/</guid>
      <description>&lt;h2 id=&#34;o-que-é-polimorfismo&#34;&gt;O que é Polimorfismo?&lt;/h2&gt;&#xA;&lt;p&gt;&lt;strong&gt;Polimorfismo&lt;/strong&gt; significa &amp;ldquo;muitas formas&amp;rdquo; e é a capacidade de objetos diferentes &lt;strong&gt;responderem à mesma mensagem&lt;/strong&gt; (método) de maneiras distintas. Em Python, o polimorfismo é natural graças ao &lt;strong&gt;duck typing&lt;/strong&gt;: &amp;ldquo;se anda como um pato e faz quack como um pato, então é um pato&amp;rdquo;.&lt;/p&gt;&#xA;&lt;p&gt;Existem três formas principais de polimorfismo em Python: polimorfismo ad-hoc (sobrecarga de operadores), polimorfismo paramétrico (generics/type hints) e polimorfismo de subtipo (herança e Protocols).&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
