Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Programação OO

Bom dia.

A despeito de minha dúvida anterior quando criamos o método imprimir() na superclasse Programa e nas classes Filme e Serie, ao utilizar o dunder o mesmo comportamento se apresentou: não é preciso definir o método dentro da superclasse Programa.

Poderia esclarecer o porque de manter o método em seu código?

2 respostas
solução!

Bom dia Otávio!

A ideia de tudo isso é de tornar nosso código mais "pythonico".

Na verdade não estamos "repetindo o método". O que fazemos na verdade é o seguinte. Estamos dizendo que esse é um comportamento que pertence a todas as filhas. Só que cada classe filha possui atributos específicos correto? Então as classes filhas herdam esse comportamento de imprimir, mas o sobrescrevem com suas especificações.

É tudo uma questão de organização, pra que a gente olhe para o código, e entenda o que esta acontecendo.

Outra razão pra tudo isso é reduzir as condições(ifs) criados fora das classes. É questão de organização deixar o que pertence a classe dentro da classe.

A gente não ta escrevendo de novo, só sobrescrevendo. Assim quem nunca viu o código vai saiber que todas as classes filhas de programa sabem imprimir.

Mas se quiser fazer da outra maneira também funciona, ai é questão de gosto. =)

Fez sentido? Espero sua resposta.

Fala Otavio,

Como sua dúvida foi solucionada, estou fechando o tópico.

Caso tenha uma nova dúvida, basta criar um novo!

Abraços.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software