ЛюбойКласс.instance_methods дает список методов, котороые будут у любого инстанса этого класса любой_объект.methods дает список методов, которые сейчас есть объекта (это совсем не обязательно те методы, которые дает его класс)
то есть когда я пишу attr_reader :a то я просто упрощаю запись для себя но при реализации будет исполнено : def a() return @a end правильно? или есть разница по скорости исполнения между ними или другая логика?