À retenir
- Le modèle est la classe, le résultat est l'objet (ou l'instance).
- Instancier donne vie au code en lui allouant de l'espace mémoire.
- On peut créer une infinité d'instances différentes à partir d'un seul et même modèle.
Instancier consiste à créer un objet concret et utilisable à partir d'un modèle théorique (appelé classe). Imaginez que la classe soit un plan d'architecte pour une maison : instancier, c'est construire une véritable maison en briques en suivant ce plan précis.
Étymologie
Il s'agit d'un anglicisme technique dérivé du mot instance, qui signifie « cas » ou « exemple ». Dans le contexte informatique, cela désigne le fait de créer un « exemplaire » particulier d'un concept général.
Exemples d'usage
- En Python ou Java, utiliser
ma_voiture = Voiture()crée un objet spécifique à partir du modèle génériqueVoiture. - Dans un jeu vidéo, instancier un monstre permet de faire apparaître un ennemi précis avec ses propres points de vie sur l'écran, basé sur un modèle de créature standard.
Cas d'usage
Ce terme est omniprésent en programmation orientée objet (POO). On l'utilise dès que l'on doit manipuler des données réelles (un utilisateur, une commande, un bouton) plutôt que de simples définitions de structures.
Bonnes pratiques
Il faut veiller à ne pas instancier des objets inutilement si l'on n'en a pas besoin, car chaque nouvelle instance consomme de la mémoire vive (RAM). Dans certains cas, on utilise le design pattern « Singleton » pour s'assurer qu'une classe n'est instanciée qu'une seule fois dans tout le programme.
Synonymes
Antonymes
Conseil
Pour bien comprendre, visualisez une classe comme un formulaire vierge et l'instanciation comme l'action de remplir ce formulaire pour une personne précise. Le formulaire rempli est votre instance.
Questions fréquentes
Quelle est la différence entre une classe et une instance ?
La classe est le moule à gâteau (le plan), tandis que l'instance est le gâteau lui-même (l'objet concret que l'on peut manger).
Peut-on modifier une instance sans toucher aux autres ?
Oui, chaque instance possède ses propres caractéristiques. Si vous changez la couleur d'une instance 'Voiture', les autres voitures créées à partir du même modèle resteront inchangées.