Composition (programmation)
- Composition (programmation)
-
symbole graphique de la Composition dans les diagrammes de la modélisation
UML.
Un lien de composition symbolise l'existence d'une agrégation particulière, dite 'forte', entre deux entités (classes).
ex. : un mariage est une composition de deux individus.
Une composition est définie par les points suivants :
• Durée de vie : toute classe agrégée 'meurt' (est détruite) quand la classe composite 'meurt' (est détruite)
• Exclusivité : une classe agrégée ne peut l'être que par une seule classe composite.
• Notion de «fait partie de»
Ainsi, non seulement le mariage est un agrégat de deux individus, mais il disparaît lors du retrait (en l'occurrence le décès typiquement) de l'un des deux individus.
A noter que la distinction entre composition et agrégation n'est pas absolue : c'est le contexte qui détermine ce choix. Ainsi une voiture peut être vue comme l'agrégation d'un habitacle et 4 roues du point de vue d'un logiciel de casse automobile (la destruction de la voiture n'entrainera pas celle des roues si elles sont récupérées auparavant), ou bien comme une composition du point de vue d'un logiciel de simulation de comportement routier (où les roues nécessitent d'être traitées comme des entités distinctes, mais où le véhicule reste considéré comme un tout).
En UML, la composition se représente par un trait plein orné d'un losange noir du côté de la classe composite.
Exemple de code en C++
// Composition
class Car
{
private:
Carburetor* itsCarb;
public:
//constructeur : toute voiture se voit affecter un Carburateur dès sa 'fabrication ' :
Car() {itsCarb=new Carburetor();}
//destructeur ~Car : la destruction de la voiture entraine irrémédiablement la destruction de son carburateur :
virtual ~Car() {delete itsCarb;}
};
Wikimedia Foundation.
2010.
Contenu soumis à la licence CC-BY-SA. Source : Article Composition (programmation) de Wikipédia en français (auteurs)
Regardez d'autres dictionnaires:
Composition (Programmation) — symbole graphique de la Composition dans les diagrammes de la modélisation UML. Un lien de composition symbolise l existence d une agrégation particulière entre deux entités (classes). ex. : un mariage est une composition de deux individus.… … Wikipédia en Français
PROGRAMMATION — Un ordinateur est une machine universelle pour le traitement de l’information. Il doit pouvoir être utilisé aussi bien pour des calculs numériques que pour la gestion d’un stock de pièces détachées ou des travaux de secrétariat. Il est donc… … Encyclopédie Universelle
Programmation lineaire — Programmation linéaire En mathématiques, les problèmes de programmation linéaire (PL) sont des problèmes d optimisation où la fonction objectif et les contraintes sont toutes linéaires. Néanmoins, la plupart des résultats présentés ici sont… … Wikipédia en Français
Programmation linéaire — En mathématiques, les problèmes de programmation linéaire (PL) sont des problèmes d optimisation où la fonction objectif et les contraintes sont toutes linéaires. Néanmoins, la plupart des résultats présentés ici sont également vrais si l… … Wikipédia en Français
Programmation linéaire en nombre entiers — Programmation linéaire En mathématiques, les problèmes de programmation linéaire (PL) sont des problèmes d optimisation où la fonction objectif et les contraintes sont toutes linéaires. Néanmoins, la plupart des résultats présentés ici sont… … Wikipédia en Français
Programmation linéaire en nombres entiers — Programmation linéaire En mathématiques, les problèmes de programmation linéaire (PL) sont des problèmes d optimisation où la fonction objectif et les contraintes sont toutes linéaires. Néanmoins, la plupart des résultats présentés ici sont… … Wikipédia en Français
Programmation logique — La programmation logique est une forme de programmation qui définit les applications à l aide d un ensemble de faits élémentaires les concernant et de règles de logique leur associant des conséquences plus ou moins directes. Ces faits et ces… … Wikipédia en Français
Composition assistée par ordinateur — Musique assistée par ordinateur La musique assistée par ordinateur (MAO) regroupe l ensemble des utilisations de l informatique comme outil associé à la chaîne de création musicale depuis la composition musicale jusqu à la diffusion des œuvres,… … Wikipédia en Français
Composition musicale assistée par ordinateur — Musique assistée par ordinateur La musique assistée par ordinateur (MAO) regroupe l ensemble des utilisations de l informatique comme outil associé à la chaîne de création musicale depuis la composition musicale jusqu à la diffusion des œuvres,… … Wikipédia en Français
Programmation mathématique — Optimisation (mathématiques) En mathématiques, l optimisation est l’étude des problèmes qui sont de la forme : Étant donné : une fonction d’un ensemble A dans l ensemble des nombre réels Rechercher : un élément x0 de A tel que pour … Wikipédia en Français