bonjour,
Afin de rédiger avec précision mon rapport sur ruby, j’aimerai quelques
précisions.
2008/5/30 Mazraelle M. [email protected]:
bonjour,
Afin de rédiger avec précision mon rapport sur ruby, j’aimerai quelques
précisions.Qu’appelle t’on module?
Je le défini comme un ensemble de méthode pour Classe. On l’apparente
aussi à un namespace.
Que signifie le self. devant le nom de la methode
Le mot self devant un nom de méthode permet de définir la methode
comme methode de classe. Ainsi pas besoin d’instancier l’objet pour
avoir accès à la méthode. Mais cela signifie aussi que la méthode a
pas accès au attribut et méthode de l’objet
instancié.
–
Cyril M.
Pour les modules je te conseille une saine lecture :
http://poignantguide.net/ruby/chapter-5.html
=================================================================================
Quand à “self” :
“self” fait référence à l’instance d’objet dans laquelle on se trouve :
Dans le cas d’une méthode d’instance :
class AClass
def an_instance_method
self
end
end
Ici le self va faire référence à l’instance de AClass sur laquelle la
méthode an_instance_method va être appellée.
class AnotherClass
self
end
Ici le self va faire référence à AnotherClass, qui est à la fois une
classe
et une instance de la classe Class (car en ruby tout est objet).
Dans ce cas, self permet donc de définir des méthodes de classe :
class OneMoreClass
def self.a_class_method
…
end
end
Cette méthode pourra être appellée sans instance :
OneMoreClass.a_class_method
Et même directement dans l’objet lui-même (ou ses descendants) :
class OneMoreClass
a_class_method
end
class AndStillOneMoreClass < OneMoreClass
a_class_method
end
Le 30 mai 2008 15:53, Mazraelle M.
[email protected] a écrit :
Que signifie le self. devant le nom de la methode
C’est une variable de contrôle.
++
yk