From: Sam Kong Date: 2006-03-22T16:18:51+09:00 Subject: Is this a kind of design patterns? Hi! Sometimes a class provides object instantiation methods other than new. See an example. class Color def initialize r, g, b @r = r @g = g @b = b end def to_s "R: #{@r}, G: #{@g}, B: #{@b}" end class << self def red new 255, 0, 0 end def blue new 0, 0, 255 end def green new 0, 255, 0 end end end puts Color.new(100, 120, 140) puts Color.red puts Color.blue Is this one of design patterns, or just a simple idiom? It's similar to a factory method pattern but it's not according to the definition. Is there any name for it? TIA. Sam