Executando verificação de segurança...
2

Primeiro ponto importante: deve haver validação no backend sempre. A não ser que não seja validação de fato.

Todo dado que entra no servidor deve ser validado, ainda que em alguns casos minimamente. E a estratégia deve ser recusar tudo que não atenda certos critérios, só provando que está ok é que deve ser aceito.

Não vou entrar em detalhes aqui porque já respondi antes.

O uso da validação no cliente é meramente questão de UX, em quase todos os casos. UX é muito importante e muito programador deixa de lado.

Validar só no backend, ainda que em fases diferentes, pode ser bem efetivo em UX e facilidade de programação. Em alguns casos pode ser muito mais vantajoso, e isso muitas pessoas não percebem porque lidam com o "99%", e não se importam com o "1%" que vai sofrer. Isso não é UX. Fica assim, mas a pessoa não consegue ver porque pra ela e muita gente está bom:

Carro Fiat 147 todo detonado andando pelas ruas

Como sempre, depende, mas sem extensiva experiência as pessoas decidem errado, em geral não considerando todas as situações.

Validar no backend pre submit pode ser melhor que validar só no frontend. Note que validar no backend post submit não está em discussão, conforme o início desta resposta. As pessoas esquecem que podem dar boa UX, até melhor em certas situações, sem usar o frontend.

Tem a questão do custo. Mas aí pode então ter sido uma decisão errada escolher algo que custa caro. Eu sempre falo que as pessoas tomam uma decisão errada, casam com ela, ou seja, se comprometem com o erro, e aí passa ter que fazer um monte de ações para compensar ou deixam algum problema pendurado na solução dela. Por isso não canso de dizer que tem que deixar modinha de lado e tomar decisões de engenharia real.

Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente. Para saber quando, me segue nas suas plataformas preferidas. Quase não as uso, não terá infindas notificações (links aqui).

Carregando publicação patrocinada...