|
|
1
3
从一般意义上讲,我认为你所描述的模式是 抽象数据类型 -这不是特定F实现的名称,但它非常符合您的描述。 引用 Programming with Abstract Data Types 由芭芭拉·里斯科夫和斯蒂芬·齐勒斯于1974年撰文:
在您的示例中,您定义的是一个抽象数据类型
这个模式可能更加关注这样一个事实:您隐藏了实现细节,并且只公开了一些操作它的操作——而在您的例子中,另一个重要的事实是抽象数据类型的值满足某些属性——但是您可以将这些值视为抽象数据类型的不变量。我想不出一个更成熟的概念来捕捉这个想法。 |
|
|
2
2
嗯,很快:你不会隐藏你的选择。你只要确保它们足够多。您还可以为映射类型提供适当的singnature函数。
现在,较长版本:
这里也适用于单一责任制(TM)。混凝土结合型
必须是
致力于一个具体的问题。就你的情况来说
|
|
|
Thomas · 使类型别名在F中不可互换# 4 年前 |
|
sdgfsdh · 我该怎么说。使用异步转换函数进行收集? 8 年前 |
|
|
Soldalma · 我可以实例化包含顶级副作用值的类吗? 8 年前 |
|
|
matekus · F#-包含数字的字符串的自然排序 8 年前 |
|
|
matekus · F#类型匹配-无法创建映射或匹配记录 8 年前 |
|
|
Rob Lyndon · 未找到F#ProvidedTypes文件 8 年前 |
|
|
red-swan · 如何将intro ML.Net演示翻译为F#? 8 年前 |
|
|
jkone27 · F#-在编译时从字符串生成简单的空类型 8 年前 |