D'accord, effectivement, mon "Storage" est ici forcé. Ok, S O L I et D me vont tous les 5 dans le principe. Mais alors, quand le site dit "pas de mot clef new dans la class", cela ne concerne bel et bien pas "clone": je n'utilise pas directement l'objet qui m'est envoyé, mais j'en fais une copie et j'utilise cette copie dans ma classe?
Il me semble plutôt que l'utilisateur de ma classe "bar" sont toutes les classes ou autres "bouts de code" qui vont... "utiliser" un objet de cette classe. Donc, l'utilisateur serait ma classe "Main". Si bar et foo étaient dans un package, l'utilisateur du package serait Main. Sinon, à quoi cela servirait-il d'utiliser "public/protected/private"? Là, j'ai un private visible du dehors de la classe, ça fait désordre...
Pour Reflection, peux-tu me montrer comment tu fais pour:
- Lire une variable private (type de base, ou objet)
- Modifier la variable private (type de base ou objet)
j'ai accès à "MyFoo", donc à la propriété private de bar :heu:
Et c'est pour cela que je demandais la différence précise entre "Gérer" et "Faire". Pour moi, "Gérer la Bibliothèque", ok, c'est 1 responsabilité et 1 classe. Mais "Traduire la bibliothèque", c'est 1 action, c'est 1 "faire", donc une méthode. As-tu un genre de "grille" qui permettrait de dire "tel truc est 1 responsabilité" ou "tel truc est un faire"?
Citation :Elle va forcément avoir une liste de livre.Je croyais qu'on ne se préoccupais justement pas du "comment" c'est stocké. Si ma bibliothèque traite l'ensemble, on n'a pas à présupposer de comment les éléments de l'ensemble sont stockés.
Il me semble plutôt que l'utilisateur de ma classe "bar" sont toutes les classes ou autres "bouts de code" qui vont... "utiliser" un objet de cette classe. Donc, l'utilisateur serait ma classe "Main". Si bar et foo étaient dans un package, l'utilisateur du package serait Main. Sinon, à quoi cela servirait-il d'utiliser "public/protected/private"? Là, j'ai un private visible du dehors de la classe, ça fait désordre...
Pour Reflection, peux-tu me montrer comment tu fais pour:
- Lire une variable private (type de base, ou objet)
- Modifier la variable private (type de base ou objet)
j'ai accès à "MyFoo", donc à la propriété private de bar :heu:
Et c'est pour cela que je demandais la différence précise entre "Gérer" et "Faire". Pour moi, "Gérer la Bibliothèque", ok, c'est 1 responsabilité et 1 classe. Mais "Traduire la bibliothèque", c'est 1 action, c'est 1 "faire", donc une méthode. As-tu un genre de "grille" qui permettrait de dire "tel truc est 1 responsabilité" ou "tel truc est un faire"?