Solución
solution.tsTypeScript
from abc import ABC, abstractmethod
class LogMixin:
# Agrega el método log_info() que retorna "[LOG] ClassName: self.name"
def log_info(self):
return f"[LOG] {type(self).__name__}: {self.name}"
class Entity(ABC):
def __init__(self, name: str) -> None:
self.name = name
@abstractmethod
def describe(self) -> str: ...
class User(LogMixin, Entity):
def __init__(self, name: str, age: int) -> None:
# Llama al constructor de Entity con super()
super().__init__(name)
# Guarda la edad
self.age = age
def describe(self) -> str:
# Retorna la descripción del usuario
return f"Usuario {self.name}, {self.age} años"
def test_mixin(name: str, age: int) -> dict:
# Crea un User y retorna {"log": ..., "description": ...}
user = User(name, age)
return {"log": user.log_info(),"description": user.describe()}0respuestas