<aside> 📘
Crée de nouveaux objets à partir d’objets existants sans rendre le code dépendant de leur classe.
</aside>
<aside> 🎯
Copie exacte d’un objet ayant certains attributs invisibles en dehors de l’objet ou sa classe concrète.
</aside>
Copier un objet « depuis l’extérieur » n’est pas toujours possible.
<aside> ✅
Délèguer le processus de clonage aux objets qui vont être copiés.
</aside>
Protoype déclare une interface commune pour tous les objets qui pourront être clonés. Cette interface vous permet de cloner un objet sans coupler votre code à la classe de cet objet. En général, une telle interface ne contient qu’une seule méthode clone
.
Les prototypes préconstruits sont une alternative au sous-classage.
Leur fonctionnement est le suivant : vous créez un ensemble d’objets configurés différemment. Dès que vous avez besoin de l’un de ces objets, vous clonez un prototype plutôt que d’en construire un nouveau.
clone
.nom → prototype
. Si vous voulez de meilleurs critères de recherche qu’un simple nom, construisez une version plus robuste du registre.