Programmation Ruby/Accesseurs
Un livre de Wikibooks.
<< Retour au sommaire << Retour à programmation objet
[modifier] Les accesseurs
Un accesseur est une méthode d'accès à un attribut.
Il existe deux type d'accesseurs :
- accesseurs en lecture (Get dans certains langages)
- accesseurs en ecriture (Set dans certains langages)
En Ruby c'est une méthode qui porte le nom de l'attribut en lecture et le nom de l'attribut suivit de '=' en écriture tel que :
Class TestClass(val) def initialize (val = "test") @val= val end #Ecriture def val=(val) @val = val end #Lecture def val @val end end titi = TestClass::new p titi.val # => "test" titi.val = "test2" p titi.val # => "test2"
Ruby propose des macro-constructions d'accesseurs pour simplifier l'écriture des classes :
attr_reader :v => def v; @v; end attr_writer :v => def v=(value); @v=value; end attr_accessor :v => attr_reader :v; attr_writer :v attr_accessor :v, :w => attr_accessor :v; attr_accessor :w