3
假设有人正在开发游戏开发框架。有一个图形渲染项目,一个窗口/上下文处理项目和一个数学库项目。如何干净地处理复杂的存储库相互依赖性?
让我们进一步说,开发商想有每个部分作为一个独立的存储设备,以防有人只是想一个图书馆办理窗口或只是想数学函数库等
因此,每一项加以游戏框架作为子模块。图形库依赖于数学库,所以它作为子模块添加到图形库中,但现在我们在主框架中有两个数学库副本。好的,所以我们从主框架中删除数学库并从图形子模块中获取项目。事情已经开始闻起来了。
为了让事情变得更糟,现在开发人员想要制作一个物理库回购(再次,因为它自己的工作回购,以防有人只想要物理而不是整个巨型框架),除了它也取决于数学库。
怎么能有这种复杂的监督/模块化没有这种头痛?
TL;博士:
game framework ------> graphics, gui, physics, math
graphics --------------> math
physics ---------------> math
但每个部分应该能够对自己的工作。
where ------> means "is dependent on"