J'ai une entité, équivalente à une tâche, qui peut avoir plusieurs états. La "tâche" peut être dans un état en attente, transmis ou en échec. Chacun de ces états aura également des données uniques. Par exemple, dans un état défaillant, l'entité doit avoir une raison pour l'échec, dans l'état en attente, elle doit avoir une date limite pour l'évaluation, etc.Comment modéliser un entitly avec plusieurs états?
Alors que ce qui précède me conduit à penser que je devrais avoir un objet séparé pour représenter chaque état, l'identifiant sous-jacent pour l'entité devrait rester le même, me repoussant vers la pensée de ceci comme un seul objet.
De plus, la transition d'un état à l'autre nécessite une certaine logique. Une tâche "en attente" passant à un état "passé" sera traitée différemment d'une tâche "ayant échoué" effectuant la même transition.
Si les représentations pour chaque état étaient exactement les mêmes, j'utiliserais simplement une propriété primitive et j'en ferais avec. Cependant, puisque les différents états ont des représentations légèrement différentes, j'ai eu du mal à trouver la meilleure façon de modéliser cela. La logique pour gouverner l'état interne devient un peu en désordre alors je me suis dit que je prendrais du recul et reconsidérerais. Des pensées?
J'utilise C# bien que je considère cette langue agnostique.
Je connais ce modèle. De ma compréhension, et de la façon dont je l'ai utilisé, il est très utile de changer le comportement d'un objet à l'exécution. Avec ce problème, je pense, il s'agit plus de gérer les différences dans la représentation de l'objet. Il se peut que j'aboie le mauvais arbre en général ici. Juste expliquer le problème m'a aidé à identifier quelques objectifs incompatibles. –