Version control 如何将Lisp代码拆分为多个源文件?
现在,我所做的每件事都设法放在一个源文件中,而且是一个非常小的源文件。您如何决定将多少和哪些内容拆分为单独的文件 使用Java,很容易决定一个文件中包含哪些内容(这个决定已经为您做出了),但在我的文章中,我发现我编写了许多相互构建的小函数,很难决定应该拆分哪些内容。当我用Lisp处理更大的项目时,不必重新发明轮子就好了,但是我在网上找不到很多关于这方面的具体信息Version control 如何将Lisp代码拆分为多个源文件?,version-control,lisp,common-lisp,system,Version Control,Lisp,Common Lisp,System,现在,我所做的每件事都设法放在一个源文件中,而且是一个非常小的源文件。您如何决定将多少和哪些内容拆分为单独的文件 使用Java,很容易决定一个文件中包含哪些内容(这个决定已经为您做出了),但在我的文章中,我发现我编写了许多相互构建的小函数,很难决定应该拆分哪些内容。当我用Lisp处理更大的项目时,不必重新发明轮子就好了,但是我在网上找不到很多关于这方面的具体信息 你能分享一些在Lisp中处理大型项目的策略吗,或者给我介绍一些处理这个问题的资源吗?如果你使用的是Common Lisp,这是一种指定
你能分享一些在Lisp中处理大型项目的策略吗,或者给我介绍一些处理这个问题的资源吗?如果你使用的是Common Lisp,这是一种指定系统的常用方法。它处理源文件之间的加载顺序依赖关系(以及更多)。请参阅Zach Beane的“”。
他在上有一篇更新文章,当你开始编写Lisp程序时,从一个文件开始可能会很有用。一旦代码变得太大(不管是什么),您可以将其拆分。当你接近需要组织的东西时,你应该投入一些工作 一些提示:
- 有一些工具可以管理源文件依赖关系,并提供诸如编译、加载、编译和加载等操作是一个,但也有其他的
- 您需要一个文件来描述依赖项。给它命名,以便能被识别
- 您可能需要一个文件来定义一个或多个包
- 您可能需要将特定于实现的功能放入它们自己的文件中
- 将大量的配置数据移动到它们自己的文件中
- 常规实用程序应位于另一个文件中
- 宏应在使用前定义。其他文件依赖于此文件,如果宏定义发生更改,则应自动重新编译这些文件
- 如果文件是逻辑连接的,则将功能分组到一个文件中。在绘图程序中:所有绘图功能、所有用户界面命令、将数据保存到文件、打印
- 不要太在意文件大小。Lisp源文件可以很大。有时是10万
- 开发环境支持在文件中移动。M-。在一个符号上找到它的来源
- 确保可以重新加载文件,而无需重新启动整个Lisp
- Common Lisp提供加载和编译文件功能。您可以在自己的文件中使用这些函数