Salut!
C'est un peu le bazar dans mon framework de simulation. Du coup je veux rendre la vie un peu plus simple à l'utilisateur.
Le plus difficile c'est de se repérer correctement dans l'espace des modèles possibles. Du coup plutot que de donner un nom de classe à chaque modèle, je me demande si ce serait pas mieux de choisir une methode via une série de types (traits?) donnant les hypothèse du modèle. Le modèle / la fonction à appeler serait construit au compile-time, mais un patron multimethods permettrait de trouver la bonne fonction à appeler si ces choix se font au runtime via par exemple boost::program_options.
Du coup en pseudo code on pourrait faire un truc comme:
Ca peut marcher un truc comme ça, ou je dis n'importe quoi?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 model = { no_selection, no_mutation, no_migration, non_overlapping_generation_times, random_mating, discrete_time }; simulate(model);C'est possible à terme de choisir la fonction/modèle à appeler au runtime, n'est-ce pas?
Partager