Dans un de mes projets, je suis en train de faire ceci:VB.NET: Optimiser l'initialisation de plusieurs classes
addTemplateToList(New docNULL)
addTemplateToList(New docAgenda)
addTemplateToList(New docAgendaNew)
addTemplateToList(New docOffer)
:
20 more
:
addTemplateToList(New docRequest)
toutes les classes héritent docMain et addTemplateToList (X) ajoute x à une liste (de docMain). Maintenant, ma question est: Y at-il une meilleure façon de faire ce qui est fait dans l'échantillon de code?
Je pensais que quelque chose comme:
for all x as docMain in ALLAVAILABLECLASSES
if x.className().beginswith("doc") then addTemplateToList(x)
next
Est-ce possible dans une certaine façon VB.net (réflexion?)?
Ne serait pas vous vérifiez si les classes héritent de docMain, plutôt que de vérifier le préfixe du nom de classe? En outre, il s'agit sans doute d'une "odeur de code" si vous avez seulement une instance de chaque classe. Par exemple, est-il possible que docAgenda puisse agir comme docAgendaNew si certaines variables privées étaient correctement définies? – MarkJ