J'ai une classe d'événements qui contient les heures de début et de fin d'un événement. Chaque objet Event peut avoir un nombre d'objets ChildEvent associés représentant chaque récurrence de l'événement parent. Chacune de ces classes doit effectuer une action différente en fonction de la façon dont elles sont éditées, par ex.comment mieux refactoriser deux classes avec beaucoup de logique conditionnelle?
Supprimer un seul événement:
- événement: faire le premier enfant, le parent de tous les autres enfants avant de supprimer
- ChildEvent: il suffit de supprimer normalement
Suppression d'un événement et tous postérieurs événements:
- Événement: supprimez tous les événements enfants puis supprimez-le
- ChildEvent: supprimer tous les futurs frères et sœurs, puis supprimer lui-même
édition un seul événement:
- événement: faire le premier enfant, le parent de tous les autres enfants puis mettre à jour
- ChildEvent: mise à jour elle-même comme d'habitude
Modification d'un événement et tous les événements suivants:
- événement: mise à jour tous les événements de l'enfant se met à jour alors
- ChildEvent: mise à jour tous les frères et sœurs à venir se mettre à jour puis
À l'heure actuelle je y parvenir grâce à la vérification des conditions et de prendre des mesures appropriées, mais il commence à devenir désordonné (il y a aussi d'autres conditions avec des comportements associés). Je suis curieux de savoir comment les programmeurs plus expérimentés géreraient cela (j'utilise ruby). Des idées?
Une partie du code aurait aidé. –
Je ne comprends pas du tout. Pourriez-vous être plus concret? –