2010-07-09 5 views
3

Au fil du temps, la base de code que je maintiens a augmenté de façon exponentielle. Nous avons une variété de différentes classes d'utilité, webparts, récepteurs d'événements, applications de console, et plus encore.Comment devrais-je organiser mon code SharePoint?

Typiquement, chaque partie de Web vit dans une DLL séparée (une solution et un projet par partie de Web). Nos classes d'utilitaires ont également été largement séparées dans leurs propres DLL séparées (cela inclut toutes les classes d'accès à la liste spécialisée qui sont regroupées avec leurs beans ensemble dans une DLL). Cela a conduit à une grande quantité de solutions qui sont devenues plus difficiles à maintenir (mise à niveau de chaque solution vers Visual Studio 2008, ou simplement essayer de trouver le labyrinthe de références DLL).

Avec ma découverte du SharePoint Guidance, je réévalue notre structure de code actuelle. Par exemple, il semble qu'ils recommandent de combiner toutes vos classes d'accès à la liste spécialisée dans un référentiel (nous avons complètement fait le contraire jusqu'à présent en les divisant en DLL selon la «solution» pour laquelle le code est).

Questions: Comment devrais-je organiser mon code? Comment décidez-vous ce qui se passe dans une solution vs projet vs dossier ou ce qui se passe dans un espace de noms? Une solution par partie Web?

Répondre

0

J'organise généralement mon code par fonctionnalité. Disons que j'ai un projet extranet et du code pour quelques webparts intranet, je le divise en un extranet et un intranet, et sépare les différentes classes de code (eventreceivers, timerjobs, webparts, etc.) en différents espaces de noms. De cette façon, je peux déployer des sous-ensembles de fonctionnalités à différentes fermes si je le veux, et quand j'édite du code j'ai tout ce qui dépend l'un de l'autre au même endroit :)

+0

Je pense que cette approche est ce que nous essayons faire aussi. Avez-vous du code partagé entre les projets? Utilisez-vous une solution MSVS pour gérer tous vos projets? –

Questions connexes