neigedhiver
Messages postés2480Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention14 janvier 2011
-
3 nov. 2007 à 01:46
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 2010
-
3 nov. 2007 à 14:27
Salut,
Je me pose une question tout bête.
Est-il judicieux d'embarquer une factory dans une classe abstraite, ou est-il préférable d'utiliser une classe dédiée ?
Dans mon cas, ma classe abstraite aurait deux rôles : être étendue par une classe concrête, et être utilisée comme factory...
Dans une logique de séparation des tâches, il me semble plus judicieux d'avoir une classe qui ne joue que le rôle de Factory et ne fasse rien d'autre.
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 3 nov. 2007 à 01:57
Hello,
bah généralement, je fais la même chose, si ça peut t'aider. Et généralement elle me sert à la fois de factory et de singleton ou de multiton. De toute manière, c'est un appel statique. Inutile de se trimballer une méthode qui peut parfois être lourde (selopn le type d'usinage que tu veuc faire) dans ta classe principale, alors que tu ne vas utiliser cette méthode que pour ton appel. Si elle est dans une classe à part, en statique, tu la vois à peine :-)
Et puis il n'est pas logique que ta classe principale (abstraite, certes, mais parente de tes autres classes) et donc que les classes concrêtes qui vont l'étendre, choisissent elles-même leur usinage. Dans ce cas, l'usinage perd de son intérêt, si chaque classe a le sien : ça s'appelle un constructeur, à ce compte ;-)
neigedhiver
Messages postés2480Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention14 janvier 201119 3 nov. 2007 à 13:48
Le problème de la décentralisation de l'usine (oh la blague...) c'est que rien n'empêche alors d'instancier la classe concrête depuis n'importe où, puisque la visibilité de son constructeur doit être publique...
C'est pas dramatique en soit, juste qu'en logique de séparation (éventuelle) des métiers, c'est moins sécurisé...
Ou alors on peut quand même s'assurer que la classe n'est instanciée que depuis l'usine, mais je vois pas comment...