【发布时间】:2012-08-01 19:20:49
【问题描述】:
我注意到静态方法在 F# 中似乎比在 C# 中更受欢迎。在 C# 中,您总是通过调用实例方法将元素添加到集合中:
mySet.Add(elem);
但在 F# 中通常有一个等价的静态方法:
mySet.Add(elem)
// OR
Set.Add elem mySet
我经常在示例中看到后一种形式。在我看来,两者在语义和功能上都完全相同,但来自 C# 背景,使用实例方法感觉更自然。 F# 中哪种风格更好,为什么?
【问题讨论】:
-
有很多原因,根植于整个函数式编程,有些是 F# 特有的,很难知道从哪里开始证明它的合理性。一旦你熟悉了函数式编程,它就会变得显而易见。
-
它只涉及 2 种样式,oo 和 fp。由于 f# 是多范式,我想两者兼而有之是有意义的。
标签: c# coding-style f#