Aula 10: Setters e validação
Uma property sem setter bloqueia toda atualização — mas às vezes uma atualização é exatamente o que se precisa, só que com segurança. Hoje adicionamos @balance.setter com validação: um valor válido entra, um valor ruim é barrado com raise. Esse é o ápice do módulo de encapsulamento.
O setter é um segurança na porta de uma balada: todo valor que quer entrar é checado — os que seguem as regras entram, os que não seguem são barrados na porta com uma explicação.
- setter
- Um método marcado com @name.setter que roda automaticamente em toda atribuição à property — o lugar para checar o valor recebido.
- validação
- Checar se um valor é válido antes de armazená-lo — e rejeitá-lo com raise quando não for.