2010-11-23 4 views

Répondre

3

Non, ils sont très différents. L'injection de dépendance signifie «donnez-moi tous les objets dont j'ai besoin pour faire ma tâche». Un bon contre-exemple serait une classe qui utilise d'autres classes singleton ou qui a d'autres dépendances codées en dur.

Les mixins sont essentiellement des objets ou des classes que vous pouvez plus ou moins fusionner avec un objet ou une classe existant pour fournir son comportement au consommateur de cet objet.

+1

Un autre exemple de l'opposé de DI est chaque * nouveau * quelque part dans une classe :) Supplémentaire (non mentionné par votre ni par le questionner) mixins n'existe pas en PHP. – KingCrunch

+1

@KingCrunch: Oui, bonne prise sur 'nouveau'. Quant aux mixins, ils peuvent être simulés en PHP en utilisant la méthode magique '__call'. – cdhowie

+1

Non nativement, mais dans userland, il y a des implémentations (exemple dans le framework Symfony, il y a la classe sfMixer) – johnjohn

Questions connexes