C#和F# - 什么情况需要一个或另一个

时间:2012-09-13 09:14:21

标签: c# f#

我试图了解C#和F#之间的差异。对我来说,C#和VB几乎是一样的,我很乐意使用其中一个,我已经习惯使用C ++来理解为什么要使用它,但是F#对我来说仍然是一个谜。

现在,我知道F#用于函数式编程(或者我已经阅读过了)但是我发现的细节并不能确定为什么我想用它来翻译另一种语言。这里已经有很多类似的问题,但很多答案表明它们实际上也很相似。

任何人都可以给出一个简单的2个现实生活情况的例子,其中最好使用一种语言而不是另一种语言(假设有任何语言)?或者我们是否觉得它可能会偏向于偏好?

3 个答案:

答案 0 :(得分:2)

请参阅here,虽然问题已经结束,但此回复可以很好地概述您何时使用F#这样的函数式语言而不是命令式语言。

答案 1 :(得分:2)

两种语言的基类库是相同的,没有什么是你无法在另一种语言中解决的。然而,一些任务,如数学计算或使用分层数据(例如解析器/类型检查器)在FP中通常比在OO其他任务中更容易,在这些任务中,您对重新创建对象进行建模并希望为用户提供操纵该真实世界对象的体验OO可能会让自己更好地完成任务

答案 2 :(得分:1)

F#是一种函数式编程语言,对数学计算特别有用。

来自MSDN

  

函数式编程用于编写的核心组件   应用。它用于优雅地实现主要算法,   处理数据或其他关键任务。代码写在功能上   风格通常更安全,更容易推理。例如,   函数式语言避免使用null值。它也可以优雅   模拟问题域并解决该域中的问题。