2008-10-27 2 views
7

Я предоставлю это, сказав, что я обычно работаю в C# /. Net.Как вы можете найти имена для своих пространств имен?

Обычно я использую схему именования, которая ставит общие, повторно используемые компоненты в пространство имен, которое отражает нашу организацию и компоненты, относящиеся к конкретному проекту, в пространство имен, привязанное к проекту. Одной из причин, почему я это делаю, является то, что я иногда разделяю свои компоненты с другими, находящимися за пределами моего отдела, но внутри организации. Пространствам, специфичным для проекта, обычно предваряется имя или аббревиатура отдела. Когда я повторно использую код между проектами, я обычно переношу его в одно из пространств имен организации.

Например:

UIOWA.DirectoryServices содержит классы, которые имеют дело с конкретной реализацией нашей Active Directory.

UIOWA.Calendar содержит классы, относящиеся к главному календарю университета.

LST.Inventory.Datalayer содержит классы, реализующие уровень данных в приложении инвентаризации групп технологий обучения.

Я сейчас приступаю к проекту для сущности, которая имеет более сумасшедшую связь с Unviersity (студенческая группа, которая проводит благотворительную акцию), которая может быть продана за пределами нашего университета, и, таким образом, я действительно вписываюсь в свои обычные соглашения об именах, т. е. отдел является только первым клиентом потенциально многих, которые могут использовать проект.

Моя склонность - проложить маршрут именования организации и создать пространство имен для «организационного проекта» для этого приложения. Я хотел бы услышать, как другие справляются с этим и любые советы, которые могут возникнуть у вас.

Спасибо.

См. Также этот родственный вопрос о namespace organization.

РЕДАКТИРОВАТЬ

Я в конечном итоге создать пространство имен орг/проекта UIOWA.MasterEvent и получение дополнительных пространств имен оттуда. Все еще интересуются другими мнениями о будущих проектах.

ответ

6

Мой отдел получил свое название изменилось трижды за последние пять лет, поэтому мы все рады, что кто-то решил против использования пространств имен с именами организационных ...

Наши пространства имен организованы по именам проектов. Многоразовые материалы помещаются в пространство имен Toolbox. Возможно, немного грубо, но до сих пор он неплохо работает.

+2

Если ваш отдел меняет имена так быстро, возможно, ваш выбор пространства имен является наименьшим из ваших забот? :-) – 2008-10-27 14:30:27

1

Я разработчик .NET, и я всегда использую пространство имен организационных проектов (com.bolidian.projectspace), потому что оно гарантирует уникальность.

0

Я пользуюсь организацией, за которой следует продукт, например Acme.Crm. При группировке классов в подзадаче всегда используйте множественное число или действие, чтобы он не мог столкнуться с классом. например

  • Acme.Crm.Letters
  • Acme.Crm.Счета-фактуры

Я следую соглашениям Microsoft, не используя заглавные аббревиатуры, например, Crm вместо CRM, Sql вместо SQL, но это более личное предпочтение.