Oi, Jhonatan, tudo bem?
A decisão de criar uma classe separada, como a 'Calculadora de Tempo', em vez de incorporar seu método diretamente na Classe 'Título' é uma prática comum em programação orientada a objetos e tem a ver com os princípios de responsabilidade única e encapsulamento.
O princípio de responsabilidade única sugere que cada classe deve ter apenas uma responsabilidade. No caso do exemplo, a classe 'Título' é responsável por armazenar e manipular informações sobre um título, enquanto a classe 'Calculadora de Tempo' é responsável por calcular o tempo total necessário para assistir a uma lista de títulos.
Além disso, o encapsulamento é um conceito fundamental em programação orientada a objetos que sugere que os detalhes de implementação de uma classe devem ser ocultados e que a interação com ela deve ocorrer por meio de métodos públicos. No exemplo, a lógica de cálculo do tempo total está encapsulada na classe 'Calculadora de Tempo'.
Outra vantagem de separar a lógica de cálculo do tempo em uma classe separada é que ela pode ser reutilizada em outras partes do código sem a necessidade de duplicação. Por exemplo, se no futuro você quiser calcular o tempo total necessário para assistir a uma lista de episódios de uma série, você pode reutilizar a classe 'Calculadora de Tempo' sem fazer nenhuma alteração na classe 'Título' ou na classe 'Série'.
Espero ter ajudado. Caso tenha dúvidas, não hesite em postar no fórum!
Abraços!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!