Создание хорошей структуры каталогов - PullRequest
2 голосов
/ 13 апреля 2010

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

Ответы [ 3 ]

4 голосов
/ 13 апреля 2010

Visual Studio имеет странный способ работы с «папками» в решениях.«Папка решений» - это на самом деле не физическая папка, а скорее виртуальная папка, управляемая Visual Studio.Ваши файлы могут оказаться в корневом каталоге, но VS будет обрабатывать их, как если бы они находились в «папке».Это настраивается и управляется в VS .sln или файле проекта.

Я не фанат того, как это работает в Visual Studio, я не понимаю, почему они не просто помещают файлы в физические папки,Вам решать, хотите ли вы бороться с VS и пытаться сохранить ваши файлы в физических папках, или же вы просто хотите, чтобы VS управлял им, но в конечном счете это действительно не имеет значения.

3 голосов
/ 13 апреля 2010

типичная структура каталогов будет выглядеть как

bin (binaries)
Src
  ->.sln
  ->common
      ->.prj
  ->Project1
      ->.prj
  ->Project2
      ->.prj
Lib (3rd party lib's)
Doc (documentation)
Tools (3rd party tools)
Setup (setup projects)
Test (test cases)
3 голосов
/ 13 апреля 2010

С C ++ в Visual Studio ваши каталоги решений не должны соответствовать файловой системе, но они могут.

Обычно люди называют структуру каталогов структурой файловой системы проекта.

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

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

Обычно в файловой системе я создаю 1 папку на проект и редко создаю подпапки внутри отдельного проекта.Но в обозревателе решений я создам папки верхнего уровня, в которые я помещаю проекты (например: «Компоненты сервера» и «Клиентские компоненты»), а также в папки проектов, чтобы логически группировать вещи (например: Config, GUI,Контроллеры, ...) так что я могу быстрее найти то, что ищу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...