开始一个新的大型 C 多平台项目,应该遵循什么规则以避免以后遇到困难?例如,作为一名新开发人员,我可能很难在 Linux 内核源代码中导航——这是一个很好的例子,它是高度可进化但难以进入的软件结构与不一致的目录结构(例如声音目录和arch in相同的目录级别)。
作为项目架构师,我应该怎么做才能避免以后的陷阱?当然,我需要非常直观且自洽的 C 词汇和文件命名约定。但是什么是好的风格,什么不是?我应该只有一个目录还是几十个目录?我应该将所有头文件放在一个公共包含目录中吗?
你能给我一个很好的例子吗?(任何开源 C 项目)