2009-11-06 2 views

Répondre

2

Eh bien, cela dépendra du coût de ces classes. Si leurs constructeurs décident de télécharger l'ensemble de wikipedia, ce sera cher ... mais d'une manière générale, ça ne devrait pas poser de problème. Créez des instances des classes dont vous avez besoin, et pas d'autres - tout devrait bien se passer. Créer des objets est généralement assez bon marché dans .NET. Je suggère que pour plus de clarté, vous ne créiez un objet que lorsque vous en avez besoin, plutôt que de tout créer et ensuite d'utiliser tous les objets plus tard.

Vous devriez également considérer si vous voulez vraiment que ce soit des variables d'instance ou pas - sont-elles toutes logiquement partie de l'état de votre formulaire? Serait-il plus logique que certaines d'entre elles soient des variables locales? Une classe qui a une grande quantité d'état veut probablement le refactoriser. C'est plus pour obtenir du code propre que de la performance.

+0

Merci beaucoup Tony le poney! – RedsDevils

1

création d'objets est généralement très pas cher, et même les plus élémentaires Form va effectivement avoir un tout tas d'autres choses à charge étant chargé. Alors franchement: allez-y.

Sauf si vos objets sont en fait massifs/ont une énorme connexion/etc coût - dans ce cas peut-être envisager le chargement paresseux. Mais généralement (et en particulier pour le code managé) cela ne va pas être un problème.

Il y a certaines choses où vous pourriez attendre OnLoad, uniquement parce que vous avez besoin de l'hWnd - mais elles sont plus rares.

+0

Merci aussi Marc! – RedsDevils

0

Cela dépend vraiment de la façon dont ces classes sont conçues et des actions qu'elles effectuent lorsque le constructeur est appelé. S'ils ont des constructeurs vides par défaut, l'impact sur la performance de l'instanciation de trois nouveaux objets ne sera pas perceptible.

Questions connexes