Comment trouvez-vous des noms pour vos espaces de noms?
-
04-07-2019 - |
Question
Je commencerai par dire que je travaille habituellement dans C # /. Net.
Normalement, j'utilise un schéma de dénomination qui place les composants communs réutilisables dans un espace de noms qui reflète les composants de notre organisation et spécifiques au projet dans un espace de noms lié au projet. Une des raisons pour lesquelles je le fais est que je partage parfois mes composants avec des personnes extérieures à mon service, mais au sein de l'organisation. Les espaces de noms spécifiques à un projet sont généralement précédés du nom ou de l'abréviation du département. Lorsque je réutilise du code entre des projets, je le migre généralement vers l'un des espaces de nom de l'entreprise.
Par exemple:
UIOWA.DirectoryServices
contient des classes traitant de la mise en oeuvre spécifique de notre Active Directory.
UIOWA.Calendar
contient des cours traitant du calendrier principal de l'université.
LST.Inventory.Datalayer
contient les classes implémentant la couche de données de l'application d'inventaire du groupe Learning Spaces Technology.
Je me lance maintenant dans un projet pour une entité qui a une connexion plus floue avec l'Unviersity (un groupe d'étudiants qui organise un événement de charité) et qui a le potentiel d'être vendue en dehors de notre université. Cela ne correspond pas vraiment à mes conventions de nommage habituelles, c’est-à-dire que le service n’est que le premier client d’une multitude de personnes susceptibles d’utiliser le projet.
Mon envie est de choisir l'itinéraire de nommage de l'organisation et de créer un "projet d'organisation". nom de l'espace pour cette application. J'aimerais savoir comment les autres traitent cela et tout conseil que vous pourriez avoir.
Merci.
Voir aussi cette question relative à organisation de l'espace de noms .
MODIFIER
J'ai fini par créer l'espace de nom org / project UIOWA.MasterEvent
et en dériver d'autres espaces de noms. Toujours intéressé par d'autres avis pour des projets futurs.
La solution
Mon ministère a changé de nom trois fois au cours des cinq dernières années. Nous sommes donc ravis que quelqu'un ait décidé de ne pas utiliser les espaces de noms avec les noms des organisations ...
Nos espaces de noms sont organisés par noms de projets. Les éléments réutilisables sont placés dans l'espace de noms Toolbox
. Peut-être un peu brut, mais cela fonctionne assez bien jusqu'à présent.
Autres conseils
Je suis un développeur .NET et j'utilise toujours l'espace de noms du projet d'organisation (com.bolidian.projectspace) car il garantit l'unicité.
J'utilise l'organisation, suivie du produit, par exemple Acme.Crm. Lorsque vous regroupez des classes dans un sous-espace de noms, utilisez toujours un pluriel ou une action afin d'éviter toute collision avec une classe. par exemple
- Acme.Crm.Letters
- Acme.Crm.Invoicing
Je suis la convention de Microsoft en ne mettant pas les acronymes en majuscules, par exemple Crm au lieu de CRM, Sql au lieu de SQL - mais c'est plutôt une préférence personnelle.