Организация проекта в C Best Practices

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

С точки зрения размещения файлов в проекте, как все должно объединяться? Какие соглашения об именах наиболее подходят?

Вас могут заинтересовать ответы на этот вопрос .

Я думаю, что самое лучшее, что можно сделать в вашей ситуации, это просто убедиться, что вся ваша команда находится на одной странице. Эта точка не может быть подчеркнута достаточно. У вас есть стандартизированный метод ведения дел и убедитесь, что вы это делаете.

Для крупных проектов мой личный метод заключается в том, что все получает свою собственную папку. то есть:

Корень -> (Классы, Структуры)

Классы -> (ClassA, ClassB)

Структуры -> (StructA, StructB)

Если необходимо, вы можете разделить StructA или Struct B …

StructA -> (Методы, Struct)

и т.п.