Olá, equipe da Alura,
Sobre a questão 1 do módulo de orientação a objetos: a questão descrevia um cenário em que havia várias funções soltas para manipular dados de produtos — calcular valor total, verificar disponibilidade, aplicar descontos — que com o tempo ficaram difíceis de organizar e reutilizar.
O que a questão pedia era identificar uma vantagem de usar orientação a objetos nesse contexto. Minha resposta foi:
“Encapsular as funcionalidades dentro de estruturas chamadas classes, tornando o código mais modular e reutilizável.”
Acredito que esta resposta está correta porque:
Indica que encapsular funcionalidades em classes organiza o código, que é a principal vantagem da OO nesse cenário.
Mostra que o código se torna mais modular e reutilizável, exatamente o que a questão buscava avaliar.
Peço, por gentileza, que revisem a correção, pois acredito que houve um equívoco na avaliação.
Agora, olhando as alternativas:
Encapsular as funcionalidades dentro de estruturas chamadas classes, tornando o código mais modular e reutilizável. ✅
Exato. OO permite agrupar dados e funções relacionados dentro de classes, tornando o código mais organizado, modular e fácil de reutilizar.
Garantir que os dados nunca serão alterados durante a execução do sistema, promovendo total imutabilidade. ❌
OO não garante imutabilidade por padrão; isso é mais relacionado a programação funcional.
Eliminar totalmente a necessidade de utilizar estruturas condicionais no código, tornando-o mais direto. ❌
OO não elimina condicionais; elas ainda podem ser necessárias.
Impedir erros de lógica relacionados a cálculos, já que métodos orientados a objetos são validados automaticamente. ❌
Métodos OO não são validados automaticamente; a lógica ainda precisa ser correta.
Reduzir automaticamente o tempo de execução das funções, sem necessidade de ajustes de performance. ❌
OO não melhora performance automaticamente; o foco é organização, modularidade e reutilização.
Obrigado pela atenção.