Capítulo 11. Definir as tuas interfaces
Este trabalho foi traduzido com recurso a IA. Agradecemos o teu feedback e comentários: translation-feedback@oreilly.com
Aprendeste a criar os teus próprios tipos definidos pelo utilizador, mas criá-los é apenas metade da batalha. Agora, os programadores têm de utilizar efetivamente os teus tipos. Para isso, utilizam a API do teu tipo. Este é o conjunto de tipos e funções relacionadas, juntamente com quaisquer funções externas, com que um programador interage para utilizar o teu código.
Assim que colocares os teus tipos à disposição dos utilizadores, esses tipos serão utilizados (e abusados) de formas que nunca imaginaste. E quando os programadores dependerem dos teus tipos, será difícil mudar o seu comportamento. Isto dá origem ao que eu chamo o Paradoxo das Interfaces de Código:
Tens uma oportunidade de acertar na tua interface, mas só saberás que está bem quando for utilizada.
Assim que os programadores utilizam os tipos que criaste, passam a depender do comportamento que esses tipos englobam. Se tentares fazer uma alteração incompatível com o passado, poderás quebrar todo o código de chamada. O risco de alterar a tua interface é proporcional à quantidade de código externo que depende dela.
Este paradoxo não se aplica se controlares todo o código que depende do teu tipo; podes mudá-lo. Mas assim que esse tipo entrar em produção e as pessoas começarem a usá-lo, terás dificuldade em mudar. Em uma grande base de código, onde a robustez e ...