Constants or class variables in ruby?
I've been programming in Ruby for a few months now, and I'm wondering when it is appropriate to use constants over class variables and vice versa. (I'm working in Rails, thinking about constants in models). class Category TYPES = %w(listing event business).freeze end OR class Category @@types = %w(listing event business).freeze cattr_reader :types end Are there circumstances where one is preferable to another? Or is it just a matter of taste/style? The main thing is that by using the CONSTANT notation, you're making it clear to the reader. the lower case, frozen string gives the impression is