2010-02-02 15 views
5

Suponiendo que tiene un espacio de nombres que es útil para más de un proyecto en su empresa, en el formato de "MiCompañía.Core", ¿tendría un ensamblaje exactamente igual o solo "Core"? ¿Por qué o por qué no?convenciones de nomenclatura de ensamblaje

Respuesta

13

Utilice las convenciones de nomenclatura .NET estándar, los nombres de ensamblado son covered here. Te voy a ahorrar el (corto) lee:

No elegir nombres para sus archivos DLL de montaje que sugieren grandes trozos de funcionalidad como System.Data. Los nombres de ensamblado y DLL no tienen que coincidir con con nombres de espacios de nombres pero es razonable seguir el nombre del espacio de nombres al nombrar conjuntos.

Considérese DLL de nomenclatura de acuerdo con el siguiente patrón :
<Company>.<Component>.dll
Dónde <Component> contiene uno o más cláusulas separados por puntos.

Por ejemplo, Contoso.WebControls.dll.

+0

¿Alguna sugerencia para hacer la refactorización del nombre del ensamblado (Resharper?), Al menos dentro de la misma solución VS? – Berryl

+0

Proyecto + Propiedades, pestaña Aplicación, nombre del ensamblado. –

4

Yo nombraría el ensamblaje del mismo modo que el espacio de nombres raíz. Esto hace que sea más fácil averiguar qué código está en qué ensamblaje y previene las colisiones con otros proyectos (de otras compañías) que también podrían estar usando el nombre ambiguo "Core.dll".

5

Creo que es mejor (opinión aquí!) Nombrar el ensamblado después del espacio de nombres raíz que contiene, en su caso MyCompany.Core.dll. Nunca se sabe si ese archivo se abrirá paso fuera de la empresa y, en general, seguirlo es más fácil.

Imagínese si Microsoft nombrado System.Core simplemente Core.dll(System.Core), entonces tienes que Core.dll(MyCompany.Core) .... Se imagina lo que obtiene peluda rápido.

3

Prefiero MyCompany.ApplicationName.Core.DLL, esto elimina las posibilidades de conflicto si hay dos o más aplicaciones de MyCompany.

0

si el desarrollo en un entorno de empresa, esta convención puede ser útil:...

espacios de nombres siguen el [DomainEntityName] [AssemblyName] [Objeto] [RelatedPurpose] formato donde el DomainEntityName es el nombre de la funcionalidad del negocio raíz y AssemblyName es el funcional que respalda el requisito comercial.

Cuestiones relacionadas