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

Programação OO

Bom dia.

Neste exemplo do modelo.py, durante a aula 3.04 (Reduzindo IFs) criamos três métodos imprime: um na classe Programa, um na classe Filme e um na classe Serie.

Pelos testes que efetuei não havia a necessidade do método na superclasse Programa, visto que os dados desta classe existem nas duas classes filhas (herança), além dos atributos duração (classe Filme) ou temporada (classe Serie) (extender).

Incluir na classe Programa um atributo, por exemplo, usuário (quem cadastrou o filme e/ou temporada, por exemplo) ou a data da inclusão na playlist, etc e imprimir na playlist para imprimir na playlist.

Nos testes efetuados, não houve necessidade do método imprimir() na classe Programa, o que inicialmente achei que seria necessário.

Qual a explicação disto?

======================== class Programa: def init(self, nome, ano): self.nome = nome.title() self.ano = ano self.likes = 0 self._usuario = "Fulano de Tal"

@usuario.setter
def nome(self, usuario):
    self._usuario = 'Fulano de Tal'

class Filme(Programa): def init(self, nome, ano, duracao): super().init(nome, ano) self.duracao = duracao

def imprime(self):
    print(f'Filme: {self._nome} - Ano: {self.ano} - Duração: {self.duracao} min - Likes: {self._likes} likes - Usuário: {self.usuario}')

class Serie(Programa): def init(self, nome, ano, temporadas): super().init(nome, ano) self.temporadas = temporadas

def imprime(self):
    print(f'Serie: {self._nome} - Ano: {self.ano} - Temporadas: {self.temporadas}  - Likes: {self._likes} likes - Usuário: {self.usuario}')

....

for programa in filmes_e_series:

 programa.imprime()

==========================

2 respostas

Olá Otavio! Como vai?

Vou te responder na sua segunda dúvida ok? Segue o Link para quem quiser acompanhar:

https://cursos.alura.com.br/forum/topico-programacao-oo-85208

solução!

Fala pessoal, estou fechando o tópico, uma vez que é uma dúvida duplicada.

Abraços.