Пространства имен, папки и избыточность, о боже! Распутанная структура папок?

Да, я просмотрел некоторые из существующих сообщений Группировка файлов проекта в папки / пространства имен

Пространства имен и структуры папок в решениях C #: как следует организовать папки на диске?

И тому подобное. Я сталкиваюсь с ситуацией ... типа, когда я не уверен, не слишком ли усложняю свою программу.

У меня есть три проекта, организованных примерно так ...

  • Интернет

    • Areas
    • Контроллеры
    • Container
      • Modules
    • Content
      • css
      • скрипты
      • картинки
    • Взгляды
  • Модели

    • [Namespace.a] // example, Project.Membership
      • Messages [Interfaces for Queries]
      • Models
        • domain-model.cs
        • domain-model.cs
        • domain-model.cs
      • Extensions
        • domain-model-extensions.cs
        • доменная модель-extension.cs
      • Errors
        • domain-model-error-messages.cs
        • доменная модель-ошибка-сообщения.cs
      • Factories
        • domain-model-factory.cs
        • доменная модель-factory.cs
    • [Namespace.b] // example, Project.Books
      • Messages [Interfaces for Queries]
      • Models
        • domain-model.cs
        • domain-model.cs
        • domain-model.cs
      • Extensions
        • domain-model-extensions.cs
        • доменная модель-extension.cs
      • Errors
        • domain-model-error-messages.cs
        • доменная модель-ошибка-сообщения.cs
      • Factories
        • domain-model-factory.cs
        • доменная модель-factory.cs
    • [Namespace.c] // example, Project.Tags
      • Messages [Interfaces for Queries]
      • Models
        • domain-model.cs
        • domain-model.cs
        • domain-model.cs
      • Extensions
        • domain-model-extensions.cs
        • доменная модель-extension.cs
      • Errors
        • domain-model-error-messages.cs
        • доменная модель-ошибка-сообщения.cs
      • Factories
        • domain-model-factory.cs
        • доменная модель-factory.cs
    • [Namespace.d] // Example, Project.Blogs
      • Messages [Interfaces for Queries]
      • Models
        • domain-model.cs
        • domain-model.cs
        • domain-model.cs
      • Extensions
        • domain-model-extensions.cs
        • доменная модель-extension.cs
      • Errors
        • domain-model-error-messages.cs
        • доменная модель-ошибка-сообщения.cs
      • Factories
        • domain-model-factory.cs
        • доменная модель-factory.cs

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

каждое пространство имен похоже на папку, поэтому дайте ему папку. каждый объект подобен файлу, поэтому дайте ему папку. каждая вещь, относящаяся к объекту, подобна собственности, поэтому организуйте их.

В целом это может показаться действительно глупым вопросом. Я очень ОКР в отношении управления и организации, но мне интересно, все ли должно быть таким ... как это называется ... модульным? это самое мудрое решение в данном случае. В настоящее время у меня есть 28 пространств имен в одном из моих проектов, каждое из которых содержит от 3 до 8 объектов.


person Ciel    schedule 23.03.2011    source источник
comment
Я просто прошу других разработчиков рассказать, насколько детально они структурируют свои проекты.   -  person Ciel    schedule 23.03.2011
comment
Проголосовали за закрытие и переход в Программисты.   -  person user7116    schedule 23.03.2011


Ответы (1)


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

Кроме того, использование таких инструментов, как Resharper, позволяет очень легко быстро переходить к файлам / типам, даже если у вас довольно глубокая структура папок.

person Tristan    schedule 23.03.2011