Capítulo 12. Subtipagem
Este trabalho foi traduzido com recurso a IA. Agradecemos o teu feedback e comentários: translation-feedback@oreilly.com
A maior parte da Parte II centrou-se na criação dos teus próprios tipos e na definição de interfaces. Estes tipos não existem isoladamente; os tipos estão frequentemente relacionados uns com os outros. Até agora, viste a composição, onde os tipos usam outros tipos como membros. Neste capítulo, vais aprender sobre subtipagem, ou a criar tipos baseados noutros tipos.
Quando aplicada corretamente, a subtipagem torna incrivelmente fácil a extensão da tua base de código. Podes introduzir novos comportamentos sem nunca te preocupares em quebrar o resto da tua base de código. No entanto, tens de ser diligente ao criar uma relação de subtipagem; se o fizeres mal, podes diminuir a robustez da tua base de código de formas inesperadas.
Começarei com uma das relações de subtipo mais comuns: a herança. Herança é vista como um pilar tradicional da programação orientada a objetos (OOP).1 A herança pode ser complicada se não for aplicada corretamente. Depois, vou falar-te de outras formas de subtipagem presentes na linguagem de programação Python. Também aprenderás sobre um dos princípios de design Solidity mais fundamentais, o Princípio de Substituição de Liskov. Este capítulo vai ajudar-te a perceber quando e onde o subtyping é apropriado e onde não é.
Herança
A maioria dos desenvolvedores de pensa imediatamente em herança quando fala em subtipagem. ...