1
resposta

Na vida real, qual seria a necessidade de adicionar a validação em tocasom()

Olá a todos! Já vi duas pessoas fazerem essa pergunta mas continuei sem entender.

Compreendo que durante a aula, foi interessante para nos mostrar que isso existe, como faz e até que é uma falha de segurança, pois poderia ocorrer um erro no funcionamento do sistema se não tratarmos todas as possibilidades, até aqui tudo bem.

A questão fica: na vida real, como poderia ocorrer uma falha de segurança, sendo que o usuário não iria passar nenhum parâmetro pra função? Ele só clica nas teclas, mas não há nenhum campo onde ele insere informações e mesmo se acrescentarmos um botão extra, não ocorre erro, já que o código já está certinho para funcionar com as classes e IDs existentes.

Poderiam, por gentileza, mostrar um exemplo de falha que poderia ocorrer realmente se este código estivesse publicado (e o usuário não sabe mexer no console)?

Muito obrigada desde já pela atenção

1 resposta

Oi, Ana! Como você está?

Desculpe por demorar a te responder.

A função tocaSom() em questão é chamada quando o usuário interage com a página, seja clicando em botões ou pressionando teclas. No caso do curso, a interação do usuário é controlada e limitada, ou seja, ele só pode interagir com os botões e teclas previamente definidos.

No entanto, em um cenário real, nem sempre temos esse controle. Pode haver situações em que a função tocaSom() seja chamada de maneiras inesperadas. Por exemplo, imagine que decidimos expandir nosso projeto e permitir que o usuário personalize os sons do teclado. Para isso, adicionamos um campo de entrada onde o usuário pode inserir o ID do som que deseja associar a uma tecla. Nesse caso, um usuário mal-intencionado poderia tentar inserir IDs ou classes que não correspondem a um elemento de áudio, o que poderia causar erros.

Mesmo quando um erro parece improvável e impossível, é importante que a gente se previna. É uma boa prática prever erros e já nos defender e, aprender a como fazer isso mesmo nos cenários mais simples é de grande contribuição para o aprendizado.

Aqui nessa resposta de minha colega Lorena, ela explica com mais detalhes sobre a validação de erros no projeto Alura Midi.

Espero que tenha sanado sua dúvida, Ana!

Grande abraço.