Question

Quelle est la différence entre Pattern Builder et Motif Flyweight en termes d'utilisation, comme les deux traite de grand nombre d'objets?

Était-ce utile?

La solution

Le modèle Builder est utilisé pour créer de nombreux objets, dans lequel le motif Flyweight est sur partage comme un collection d'objets.

Ces deux modèles traitent tous les deux « composites », à savoir des objets qui peuvent avoir plusieurs éléments, mais ils ne doivent pas nécessairement être utilisés simultanément. Le cas d'utilisation d'archétype pour Flyweight est où une piscine de quelques dizaines de caractères objets sont utilisés à plusieurs reprises dans une application éditeur de texte (ce qui est l'exemple donné dans la section "livre GoF" )

Autres conseils

Droit de wikipedia.

Flyweight

  

est un Flyweight conception de logiciels   modèle. Une masselotte est un objet qui   minimise l'utilisation de la mémoire par le partage comme   données que possible avec d'autres   objets similaires; il est un moyen d'utiliser   objets en grand nombre lors d'un simple   représentation répétée utiliserait une   quantité inacceptable de la mémoire.

Builder

  

Le modèle Builder est un logiciel   design pattern. L'intention est de   étapes abstraites de construction de   de sorte que des objets différents   les mises en œuvre de ces étapes peuvent   construire des représentations différentes de   les objets.

Une aide avec des objets de construction et l'autre avec l'aide de la mémoire. Vous pouvez éventuellement utiliser un constructeur de « construire » différents objets de poids mouche.

modèle poids plume est approprié lorsque « de nombreux objets doivent être manipulés et ceux-ci ne peuvent pas se permettre d'avoir des données étrangères. » En Java, les objets String sont gérés comme poids mouche. Java met toutes les littéraux de chaîne fixe dans une piscine littérale. Pour littéraux redondantes, Java conserve une seule copie dans la piscine.

La clé de travail poids mouche est en contrôlant l'instanciation d'objets en utilisant une méthode de fabrication ou modèle de conception constructeur. Le travail d'une méthode de fabrication est simplement de créer des objets: critères d'entrée donnés, retourne un objet de type approprié.

Abstract factory est similaire à builder en ce sens qu'il peut aussi construire des objets complexes. La principale différence est que le modèle Builder se concentre sur la construction d'une étape d'objet complexe par étape. l'accent mis par le facteur abstrait est sur les familles d'objets produits (simples ou complexes).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top