Bonjour à tous,

Voici un exemple de code :
class Person < ActiveRecord::Base
    has_many :hobbies
end

class Hobby < ActiveRecord::Base
    belongs_to :person
end

Admettons que je veuillez ajouter un hobbie à une personne je peux faire ça
:

person.hobbies.add(hobby)

Mais je viole le principe d'encapsulation qui voudrais que je fasse ça :

class Person < ActiveRecord::Base
    has_many :hobbies
    def add_hobby(hobby)
         hobbies.add(hobby)
    end
end

...
person.add_hobby(hobby)

J'ai donc fait une nouvelle fonction pour ajouter un hobbie. Le problème ce
que ça fait plus de ligne de codes, particulièrement si l'on a beaucoup de
relations. Surtout que l'on doit faire un test pour cette fonction ce qui
nous rajoute encore du code. Le point positif que je vois c'est que c'est
plus facile pour faire des stubs et des mocks.

Ça serait facilement possible de faire une plugin pour ça mais est-ce
vraiment utile?

Voici ma question : Encapsulez vous toutes vos fonctions?

Bonne journée tout le monde!

-- 
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de 
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse 
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse 
[email protected]

Répondre à