Q quand est-ce qu'une classe a sémantique de collection
R On dit d'une classe qu'elle a sémantique de collection quand son objectif est de maintenir
un certain nombre d'éléments d'un type particulier en permettant à l'utilisateur d'y accéder séparément ou de manière groupée.
Cette sémantique particulière prend place exactement entre les sémantiques de valeur et d'entité dont elle recouvre certaines de leur caractéristiques, mais présente également certaines particularités qui lui sont propres :
- il est possible qu'elle soit destinée à servir dans une relation d'héritage, tout comme il est possible qu'elle ne le soit pas
- elle fournit généralement la possibilité d'ajouter, de rechercher et de supprimer un (ou plusieurs) élément(s) particulier
- elle fournit au minimum la possibilité d'accéder en lecture seule à un élément particulier parmi ceux qu'elle contient
- elle peut fournir la possibilité d'accéder à un élément particulier parmi celle qu'elle contient afin de modification
La capacité que l'utilisateur a de copier un objet ayant sémantique de collection et / ou d'affecter un tel objet à un autre (via le constructeur de copie et l'opérateur d'affectation) dépend essentiellement de la sémantique des éléments qu'elle contient : si elle contient des éléments dont le type a sémantique de valeur, la copie et l'affectation seront possibles, mais si elle contient des éléments dont le type a sémantique d'entité, ni l'un ni l'autre ne seront possibles.
Partager