Linux C++;项目源文件目录结构 我在Linux上工作了一个相当大的C++项目。我们正试图提出组织源文件目录结构的标准
我们的一个想法是让目录结构反映我们的架构选择。例如,我们的域类有一个根级别,边界类有一个根级别,域无关基础设施类有一个根级别 因此,在银行应用程序中,我们可能有一个名为src/domain/accounts、src/domain/customerTransactions、src/boundary/customerInputViews等的目录。然后我们可能有另一个名为src/infra/collections、src/infra/threading等目录 此外,在该结构中,我们将把接口类与实现类隔离开来。我们这样做是为了使接口的客户端不依赖于实现类的目录结构Linux C++;项目源文件目录结构 我在Linux上工作了一个相当大的C++项目。我们正试图提出组织源文件目录结构的标准,c++,linux,directory-structure,C++,Linux,Directory Structure,我们的一个想法是让目录结构反映我们的架构选择。例如,我们的域类有一个根级别,边界类有一个根级别,域无关基础设施类有一个根级别 因此,在银行应用程序中,我们可能有一个名为src/domain/accounts、src/domain/customerTransactions、src/boundary/customerInputViews等的目录。然后我们可能有另一个名为src/infra/collections、src/infra/threading等目录 此外,在该结构中,我们将把接口类与实现类隔
有什么想法吗?把代码分成独立的部分听起来是个好主意。这将允许您潜在地将内容分解为单独的单元(对于自动工具:您可以为组织提供方便的lib,以后甚至可以将它们完全分解为共享lib)
当然,子模块应该包含构建所需的所有内容:头文件、源文件和构建基础设施(可能只缺少包含的顶级构建定义文件)。这将确保C++可以对小单元进行测试(但是测试整个事情)。Qt就是一个明显的例子。