Ich habe jetzt seit ein paar Monaten in Ruby programmiert, und ich frage mich, wann es angebracht ist, Konstanten über Klassenvariablen zu verwenden und umgekehrt. (Ich arbeite in Rails, denke über Konstanten in Modellen nach).Konstanten oder Klassenvariablen in Ruby?
class Category
TYPES = %w(listing event business).freeze
end
ODER
class Category
@@types = %w(listing event business).freeze
cattr_reader :types
end
Gibt es Umstände, wo man zu einem anderen vorzuziehen ist? Oder ist es nur eine Frage des Geschmacks/Stils?
+1 - und denken Sie an die Armen Variable, die nicht zu erfüllen seine desiny bekommt (es ändert sich nie)! Bezogen auf den RDoc-Kommentar beachten Sie, dass Konstanten standardmäßig dokumentiert werden – Gareth
Schlechte kleine ungeliebte Variable. –