bullitufa
@bullitufa
электронщик программист (микроконтроллеры и PC)

Как организовать файлы (исходников), папок и модулей программы на С/С++?

Здравствуйте!

Программирую на С под микроконтроллеры, и есть небольшой опыт программирования десктопных (Win) приложений (Delphi, VS и немного Python).
Все программы в основном простые, с фиксируемым функционалом, не требующих масштабирования и вообще развития.
Каждый раз начиная писать программу я задаюсь одним и тем же вопросом: как же мне организовать структуру файлов и папок, чтоб было удобно и красиво?
При этом есть конечно же особенность таргета: прошивка микроконтроллера или десктопное приложение.

Как лучше всего организовать файлы и папки проекта? Как раскидывать по папкам заголовочные файлы?

При условиях:
1) исходники могут быть собраны разными способами (через IDE или командной строкой)
2) использование svn/git
3) использование doxygen
и т.д.

Возможно в литературе описано или вообще существует подход? А если есть пример то еще лучше.
  • Вопрос задан
  • 3000 просмотров
Пригласить эксперта
Ответы на вопрос 1
tsarevfs
@tsarevfs
C++ developer
Для хранения в репозитории разумно разделять папки src(исходный код) и bin(собранные бинарники) и добавлять под систему хранения версии только src.
Заголовочные файлы обычно хранят рядом с соответствующим *c или *.cpp файлами. Если же заголовочный файл предназначен для повсеместного использования можно использовать пути src/include/foo/bar.h, и добавить src/include в include_path вашего проекта, чтобы не писать #include "../../foo/bar.h"
В целом разбиение на папки должно соответствовать логике проекта. Скажем, графический интерфейс было бы логично выделить в отдельный каталог src/GUI.
Вы можете посмотреть примеры в репозиториях опенсорсных программ. Например:
qBittorrent
VLC
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы