Olá João, tudo bem?
A programação defensiva é uma prática importante na programação, pois ajuda a evitar erros e exceções inesperadas no código. Ela consiste em verificar se os valores de entrada estão corretos e se atendem aos requisitos esperados antes de utilizá-los.
No caso do Bean Validation, ele é uma ferramenta muito útil para validar campos obrigatórios e formatos de dados, mas não cobre todas as possibilidades de validação. Por isso, é interessante sim inserir validações defensivas no momento da utilização dos parâmetros.
Por exemplo, se você espera receber um número inteiro positivo, é importante verificar se o valor recebido é realmente um número inteiro e se é maior que zero antes de utilizá-lo. Isso pode evitar erros no código e garantir que o programa funcione corretamente.
Espero ter ajudado e bons estudos!