2010-01-16 3 views
3

J'ai un peu d'énigme entre les mains.Noms d'espaces de noms et d'assemblages pour un composant réutilisable

Je compile actuellement une charge de 'fragments de code' dans des bibliothèques réutilisables que j'ai évidemment l'intention d'utiliser dans plusieurs applications.

Je n'arrive pas à déterminer un nom d'espace de nom et d'assembly approprié. Fondamentalement, j'ai actuellement JasonSummers.Validation comme exemple pour ma bibliothèque de validation, puisque je n'ai pas de «société» et aucun projet spécifique auquel le code s'applique. Cependant, plus tard, quand j'utiliserai cet espace de noms dans le projet d'un client, je ne pense pas qu'il soit vraiment approprié d'avoir mon nom référencé dans le code dont ils vont probablement posséder l'IPR. J'utiliserais simplement 'Validation' comme espace de nommage (après tout, StructureMap est StructureMap, pas JeremyMiller.StructureMap) mais cela pourrait causer de la confusion pour les futurs développeurs car 'Validation' est utilisé dans l'ensemble d'espaces de noms 'System' fourni par .net

Tous les commentaires ont été grandement appréciés.

Répondre

0

Vous pouvez toujours utiliser le nom de la biologie, par exemple Tribulus. ou tout autre pour votre espace de noms racine. Donc, votre code va dans Tribulus.Validation ou Tribulus.Utilities par exemple, etc. namespace Toplevel ne doit pas être un nom fonctionnel. Il peut s'agir simplement d'une signature d'entreprise ou d'un nom unique intéressant que je mentionne.

+0

C'est une excellente idée d'affan! Je vais essayer ça :) –

0

Dans mon expérience personnelle, je maintiens une base de code pour que les fonctions utiles au niveau de la source, à savoir, je copie toutes les fonctions dont j'ai besoin dans tous les projets, sous ma marque de client et le nom de l'assemblage.

Je n'ai pas trouvé utile de garder ces fonctions au niveau de l'assemblage, exactement parce que: cela contiendra des noms qui peuvent générer de la confusion et pour une raison supplémentaire: un client a payé pour une fonctionnalité, mais pas pour une autre (inclure dans une assemblée générale). Donc, je viens d'emballer ce qu'il/elle a acheté.

Une option pourrait être d'utiliser un nom neutre, comme Reusable et de fusionner votre ensemble utilitaire en utilisant la commande de structure ilmerge.

+0

Merci pour votre commentaire Rubens, I contiennent également une sélection de « blocs de code utiles » que je copier/coller au besoin. Toutefois, cet ensemble contient des objets et des contrôles utilisateur que je préfère ne pas avoir à recréer (même si elle est par copier/coller) dans des projets futurs. –

Questions connexes