2017年,据我所知,程序员组织代码的方式没有改变。我们将代码分发到文件中,并使用树结构(嵌套目录和文件)对它们进行组织。当代码库很大,并且类/组件之间的关系很复杂时,这种组织方法给我的效率低下。对于更多文件,一个目录中包含更多文件或目录深度增加。而且由于我们直接处理目录,导航会花费我时间和精力而无需搜索等工具。
图:来自https://github.com/CMPUT301W15T09/Team9Project/wiki/UML的复杂UML
我们可以使用CAD来设计/绘制复杂的东西;思维导图可以以类似的方式创建。对于这些,我们不需要处理文件系统。我们不能有类似的东西并将文件系统隐藏在黑盒子里吗?为什么基本的组织方法没有发展很长一段时间。
所以我想知道,让我们无法获得新方式的优势是什么?使用文件系统组织代码的继承优势是什么?
答案 0 :(得分:0)
尝试了不同的源代码磁盘表示(例如Flash如何将ActionScript存储在二进制.fla
文件中)并且它们通常不受欢迎。没有人喜欢专有的文件格式。这也意味着您不能使用像Git这样的基于文本的源代码控制系统,这意味着您无法进行文本合并来解决更改冲突。
我们将源代码存储在树结构的文件中(例如,每个文件一个OOP类或过程模块),嵌套命名空间由嵌套目录表示,因为它直观(并且再次,为了更好地与源控制系统相结合)。 / p>
有些语言强制执行此操作,例如Java,它要求源文件的名称与其包含的类相同,并且与包含的包在同一目录名中。对于其他语言,如C#和C ++,它只是有意义的 - 因为否则当他们在名为class TurboEncabulator
的文件中看到PrefabulatedAmulite.cs
时可能对您的代码库不熟悉的人会感到困惑。