0

我没有找到组织各种算法的好方法。今天的文件是这样的:

1/ 从 Excel 中提取值

2/ 基于这些值的第一个算法(从 Excel 中提取)以“let matriceAlgo1 =”开头

3/ 第二个算法从相同的值开始 "let matriceAlgo2 ="

4/ 综合算法,对 2/ 和 3/ 进行加权平均(取决于几个值)并选择要显示的结果。“让矩阵合成=”

我的问题如下:我应该在这个文件的不同部分之前放什么才能用那里的名字来称呼它们?我已经看到解释 Module 可能是一个答案的答案,但我不知道如何在我的案例中应用它(或者如果它不是好的答案,则为其他任何东西)。最后,我希望能够写出类似的东西这个 :

"启动提取

启动第一个算法

启动第二个算法

发射合成"

4

1 回答 1

1

我通常组织文件的方式是在文件的不同部分之间有一些清晰的视觉分隔符(例如参见 GitHub 上的 Crawler.fsx),然后在末尾有一个“主要”部分来调用之前声明的函数。

除非我有大量名称冲突的函数,否则我不会真正使用模块。如果您的算法包含更多函数(例如 、 等),那么使用模块是个好Alg1.initialize主意Alg1.run。然后,您可以使用模块别名轻松地在使用不同算法之间切换:

module Alg = Alg1 // or Alg2

let a = Alg.initialize
Alg.run a

如果文件越来越长,那么您还可以将部分移动到单独的文件中,并用于#load "File.fs"从文件中加载算法或函数。在这种情况下,您可能需要使用模块,但您始终可以open在加载文件后使用模块。

于 2011-10-07T15:43:12.613 回答