Типы и пространства имен
Обновлен: Ноябрь 2007
Следующие правила помогут объединить требуемые типы и пространства имен таким образом, чтобы их можно было быстро найти и использовать.
Используйте пространства имен для организации типов в иерархию связанных предметных областей.
Избегайте слишком глубокой иерархии пространств имен. Такие иерархии сложны для обзора, так как пользователю приходится часто возвращаться назад.
Избегайте слишком большого числа пространств имен.
Типы, используемые в одних и тех же сценариях, должны по возможности располагаться в тех же самых пространствах имен. Пользователи не должны быть вынуждены импортировать слишком большое число пространств имен для разрабатываемых сценариев.
Не допускайте, чтобы типы для сложных сценариев располагались в том же пространстве имен, что и типы, предназначенные для обычных сценариев.
В общем случае, следует размещать расширенные типы в пространстве имен внутри основного пространства имен и использовать Advanced в качестве последнего идентификатора имени. Например, общецелевые типы, относящиеся к XML-сериализации, находятся в пространстве имен System.Xml.Serialization, а расширенные типы – в пространстве имен System.Xml.Serialization.Advanced.
Не определяйте типы без указания их пространства имен.
Типы, которым не назначены пространства имен, располагаются в глобальном пространстве имен. Так как они не находятся в специальном пространстве имен, типы в глобальном пространстве имен сложно найти при помощи инструментов разработчика. Кроме того, коллизии по именам в глобальном пространстве имен не могут быть разрешены. Дополнительные сведения см. в разделе Имена пространств имен..
Охраняется авторским правом Copyright 2005 Microsoft Corporation. Все права защищены.
Охраняется авторским правом Copyright Addison-Wesley Corporation. Все права защищены.
Дополнительные сведения о руководствах по разработке см. в книге "Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries", Krzysztof Cwalina and Brad Abrams, Addison-Wesley, 2005.