1
resposta

Meu código de exemplo Mãos na Massa

# Exemplo de classe utilizando um mixin
# Um mixin é um comportamento que será utilizado em várias classes sem distinção
class Hipster:
    def __str__(self):
        return f'Hipster, {self.nome}'


# Classe Funcionário herdará o comportamento da classe Hipster
class Funcionario(Hipster):
    def __init__(self, nome):
        self.nome = nome


    def registra_horas(self, horas):
        print('Horas registradas...')

    def mostrar_tarefas(self):
        print('Fez muita coisa...')


# Classe Caelum herdará Funcionário
class Caelum(Funcionario):
    def mostrar_tarefas(self):
        print('Fez muita coisa, Caelumer')

    def busca_cursos_do_mes(self, mes=None):
        print(f'Mostrando cursos - {mes}' if mes else 'Mostrando cursos desse mês')


# Classe Alura herdará Funcionário
class Alura(Funcionario):
    # def mostrar_tarefas(self):
        # print('Fez muita coisa, Alurete!')

    def busca_perguntas_sem_resposta(self):
        print('Mostrando perguntas não respondidas do fórum')


# Classe Junior herdará Alura que herda Funcionário
class Junior(Alura):
    pass


# Classe Pleno herdará Alura e Caelum que herdam Funcionário
class Pleno(Alura, Caelum):
    pass


# Classe Senior herdará Alura e Caelum que herdam Funcionário
# class Senior(Alura, Caelum):
#     pass


# Chamando e atribuindo valores os métodos das classes e mostrando o resultado
jose = Junior('José')
jose.busca_perguntas_sem_resposta()
jose.mostrar_tarefas()
print(jose)

luan = Pleno('Luan')
# luan = Senior('Luan')
luan.busca_perguntas_sem_resposta()
luan.busca_cursos_do_mes()
luan.mostrar_tarefas()
print(luan)

# Resultado
[Running]
Mostrando perguntas n�o respondidas do f�rum
Fez muita coisa...
Hipster, José
Mostrando perguntas n�o respondidas do f�rum
Mostrando cursos desse m�s
Fez muita coisa, Caelumer
Hipster, Luan

[Done] exited with code=0 in 0.132 seconds

1 resposta

Olá Douglas, tudo bem?

Meus parabéns pela implementação do código, fico feliz em acompanhar o seu desenvolvimento junto com a Alura.

Deixo abaixo uma recomendação de leitura sobre o uso do mixin em Python para aprimorar ainda mais o seu desenvolvimento.

O artigo acima está em inglês, caso tenha dificuldade com o idioma, recomendo o uso do tradutor do navegador.

Fico à disposição.

Abraços e bons estudos.