Class Methods vs Module Methods?

Hello all,

Is there anybody else confused about module methods? Why would you
create one when you could create a class method that is essentially the
same thing but with more functionality?

···

--
Posted via http://www.ruby-forum.com/.

PHP HD schrieb:

Hello all,

Is there anybody else confused about module methods? Why would you
create one when you could create a class method that is essentially the
same thing but with more functionality?

Because you can "mixin" these methods in classes.
module Foo
  def test
   puts "Hello!"
  end
end

class Bar
  include Foo
end

f = Bar.new
f.test #=> Hello!

Because sometimes you want a namespace for methods, but there's no
class that can be instantiated:

module Cupid
  def self.createConnection( person1, person2 )
    # ...mysterious details here...
  end
end

Cupid.createConnection( ... )

These may also be utility methods used by 'instance' methods in a
module that will be mixed into one or more other classes.

···

On Jun 18, 9:54 am, PHP HD <chuck....@merrillcorp.com> wrote:

Is there anybody else confused about module methods? Why would you
create one when you could create a class method that is essentially the
same thing but with more functionality?