เหล่านี้คือเมธอดของ Ruby ที่ สร้างเมธอด getter และ/หรือ setter โดยอัตโนมัติ สำหรับ instance variable เพื่อขจัดโค้ดซ้ำซ้อน เนื่องจาก instance variable (@name) เป็น private และเข้าถึงโดยตรงจากภายนอกไม่ได้ คุณจึงต้องมีเมธอด accessor เพื่ออ่าน/เขียนมัน และ attr_* สร้างเมธอดเหล่านี้ให้อย่างกระชับ
ปัญหาที่มันแก้ไข
()
= name
()
= value
