提示5-13:解释将源代码映射到构建块!

提示5-13:解释将源代码映射到构建块!

#building-block #source-code #essential #mapping

在某些(理想)情况下,构建块结构完全映射到源代码的文件、包或模块结构。但可悲的是,这并不总是如此。

考虑以下图表:在中心,您可以找到一个文件系统的摘录,其中包含几个.java和.php文件。在这个假设的目
录列表中的左侧和右侧,您可以找到两种替代方案,如何将这些源映射到架构构建块:

  • A_1由x.java和y.java、z.java的A_2和一些php文件、g.java和h.java的A_3组成。
  • B_1x.java,y.java和z.java,其余的B_2

将代码映射到块图

这两个版本都有充分的理由。对于您的系统,您应该有特定原因,为什么某些构建块包含哪些源代码。

将构建块映射到代码是一个具体的决定

虽然将代码映射到构建块应该与文件系统结构对齐,但在某些情况下,它可能完全不同-一些例子:

  • 有人不小心把太多文件放在同一个目录里了
  • 几种编程语言混合在同一源树中
  • 构建块的责任随着时间的推移而改变,但相应的源代码文件没有适当移动
  • 其他约束强制执行特定的目录结构,例如,一些晦涩难懂的框架需要特定位置的某些源文件,或者构建/部署过程需要某些目录结构,这些结构不会映射到架构构建块。

保持代码和构建块的映射简单明了

尽量保持映射简单明了。应该避免复杂的映射,如上图中的左图版本。

在理想情况下,文件系统中的目录与构建块相同。包含的黑框然后包含在子目录中的文件…

另请参阅

提示5-14(源代码在哪里)
提示5-15(将块映射到目录)
提示5-16(使用编程语言的模块化结构)