|
|
1
3
从一般意义上讲,我认为你所描述的模式是 抽象数据类型 -这不是特定F实现的名称,但它非常符合您的描述。 引用 Programming with Abstract Data Types 由芭芭拉·里斯科夫和斯蒂芬·齐勒斯于1974年撰文:
在您的示例中,您定义的是一个抽象数据类型
这个模式可能更加关注这样一个事实:您隐藏了实现细节,并且只公开了一些操作它的操作——而在您的例子中,另一个重要的事实是抽象数据类型的值满足某些属性——但是您可以将这些值视为抽象数据类型的不变量。我想不出一个更成熟的概念来捕捉这个想法。 |
|
|
2
2
嗯,很快:你不会隐藏你的选择。你只要确保它们足够多。您还可以为映射类型提供适当的singnature函数。
现在,较长版本:
这里也适用于单一责任制(TM)。混凝土结合型
必须是
致力于一个具体的问题。就你的情况来说
|
|
|
plinth · F#:DU用例上的类型匹配,使其更通用 11 年前 |
|
|
Sumrak · f#:常量联合箱标记号 11 年前 |
|
|
CodeBeard · 是否可以在fsharp中动态生成判别并集? 12 年前 |