Estos son métodos de Ruby que generan automáticamente métodos getter y/o setter para variables de instancia — eliminando código repetitivo. Dado que las variables de instancia (@name) son privadas y no están directamente accesibles desde fuera, necesitas métodos de acceso para leer/escribir en ellas, y attr_* genera estos de forma concisa.
El problema que resuelven
()
= name
()
= value
