Persistance · Question 5 sur 12
En quoi une entité se distingue-t-elle d'un value object dans un modèle de domaine Extbase ?
1 réponse est correcte. Facile
Afficher la solution
Solution
- A Une entité possède sa propre identité (UID), un value object est défini uniquement par ses valeurs
Explication
Une entité reste « le même objet » même lorsque ses propriétés changent – une conférence d'UID 42 reste cette conférence même si son titre change. Un value object n'a pas d'identité : deux couleurs ayant le même nom et la même valeur hexadécimale sont égales et interchangeables ; des exemples typiques sont les montants, les plages de dates ou les coordonnées. Les value objects sont immuables ; au lieu de les modifier, on les remplace par un nouvel objet. Dans TYPO3 v14, on les écrit comme de simples classes PHP et on stocke leurs valeurs dans des colonnes de l'entité propriétaire ; la classe AbstractValueObject est marquée @internal et ne doit pas être étendue.