ich ein interessantes Problem gefunden: http://rubeque.com/problems/fixing-bad-code-the-wrong-way/solutionsRubin initialisieren und Selbst
Im Allgemeinen haben wir eine einfache Klasse (man beachte, dass wir nicht attr_accessor
hier haben):
class Foo
def itnialize(name)
self.foo = name
end
def set_bar
self.bar = 'it will fail..'
end
end
Ich dachte, dass Rubin erhöhen wird keine Methode Fehler, wenn ich Foo.new
aufrufen, aber es passiert ohne Probleme. Der Code schlägt fehl, wenn ich versuche Foo.new.bar
Wie ist es möglich und wie auf Foo.new.foo
Variable zugreifen?
Meine schlecht, es scheint, dass dieses Rätsel http://rubeque.com/problems/fixing-bad-code-the-wrong-way/ Lösungen machen keinen Sinn ... – luacassus
Ich habe mir nur das Puzzle angesehen, kann aber nicht sehen, wie es zusammenhängt! Das Rätsel macht aber Sinn - und der Titel "schlechten Code falsch fixieren" ist * sehr, sehr passend *. – Russell
Ich denke, die Sache im Puzzle ist die Definition von 'method_missing' - Sie müssen keinen Code außerhalb dieser Methode ändern. – Russell