Namespaces
The general rule for naming namespaces is to use the company name followed by the project name and optionally the feature or module name (which can be followed by sub-feature or sub-module name): CompanyName.Project[.Module][.SubModule] For example (code belonged to Itransition): Itransition.Framework Itransition.Framework.Web Itransition.Framework.Web.Controls Or for offshore code: Cimage.Fusion Cimage.Fusion.WebClient Genesys.Voodoo Genesys.Voodoo.Common Name a namespace that contains types that provide design-time functionality for a base namespace with the.Design suffix. Usually, a nested namespace should have a dependency on types in the containing namespace. For example, the classes in the System.Web.UI.Design depend on the classes in System.Web.UI. However, the classes in System.Web.UI do not depend on the classes in System.Web.UI.Design. You should use Pascal case for namespaces, and separate logical components with periods, as in Microsoft.Office.PowerPoint. If your brand employs nontraditional casing, follow the casing defined by your brand, even if it deviates from the prescribed Pascal case. For example, the namespaces NeXT.WebObjects and ee.cummings illustrate appropriate deviations from the Pascal case rule. Use plural namespace names if it is semantically appropriate. For example, use System.Collections rather than System.Collection. Exceptions to this rule are brand names and abbreviations. For example, use System.IO rather than System.IOs. Do not use the same name for a namespace and a class. For example, do not provide both a Debug namespace and a Debug class. If you develop several assemblies for the project it is recommended to use “main” namespace name as assembly name. For example, assembly Microsoft.SharePoint.dll contains Microsoft.SharePoint, Microsoft.SharePoint.WebControls, Microsoft.SharePoint.WebPartPages, etc. namespaces.
|