Ce sont des méthodes Ruby qui génèrent automatiquement les méthodes getter et/ou setter pour les variables d'instance — éliminant le code passe-partout. Puisque les variables d'instance (@name) sont privées et non directement accessibles de l'extérieur, vous avez besoin de méthodes d'accès pour les lire/écrire, et attr_* les génère de manière concise.
Le problème qu'elles résolvent
()
= name
()
= value
