Je suis en train de faire un simple programme orienté objet pour essayer de m'aider à maîtriser la POO. J'ai une inteface ICommand qui a la méthode Run (paramètres params object []) et j'ai différentes classes qui utilisent cette interface et implémentent leurs propres versions de run. Chaque classe a aussi une propriété de nom qui dit ce qu'est la commande et ce qu'elle fait.Polymorphisme C# - comment ne pas coder les types
Je veux avoir une interface graphique où je peux créer des commandes, qui auront probablement besoin d'une sorte de liste pour sélectionner le type de commande à créer. La question est, comment puis-je faire cette liste et le faire fonctionner sans codage en dur dans une déclaration de commutateur avec des références explicites à toutes les classes que j'ai créées.
Je suis sûr que c'est un problème très simple dont je devrais connaître la réponse, mais je ne peux pas y penser! Je suis sûr qu'il y a une réponse cependant. Oh et je m'attends à ce que certaines des réponses disent pour lire le livre de modèles de conception: bien la seule copie dans la bibliothèque est dehors pour le moment, mais je le lirai dès que possible!
Mise à jour: Je viens juste de poster une question de suivi here
Merci pour la réponse. Malheureusement, je ne comprends pas très bien ce que vous voulez dire. Qu'est-ce qu'une liste générique d'ICommand? – robintw
a ajouté du code. La commande est une classe qui implémente ICommand. –
Je viens de poster une question de suivi ici: http://stackoverflow.com/questions/454163/c-polymorphism-load-classes-from-dll-files – robintw