Leçon 10 : setter et validation
Une propriété sans setter bloque toute mise à jour — mais parfois une mise à jour est exactement ce qu'il faut, juste en sécurité. Aujourd'hui, on ajoute @balance.setter avec validation : une valeur valide entre, une valeur invalide est arrêtée avec raise. C'est le sommet du module encapsulation.
Le setter est un videur à l'entrée d'un club : chaque valeur qui veut entrer est contrôlée — celles qui respectent les règles entrent, celles qui ne les respectent pas sont arrêtées à la porte avec une explication.
- setter
- Une méthode marquée @name.setter qui s'exécute automatiquement à chaque affectation à la propriété — l'endroit où vérifier la valeur entrante.
- validation
- Vérifier qu'une valeur est légale avant de la stocker — et la rejeter avec raise quand elle ne l'est pas.