可能重复:
使用C#vs F#或F#vs c#有什么好处?
我的团队目前正在使用C#.NET为我们公司开发企业应用程序.我们有Winforms dev的历史,但现在正转向SilverLight.
我的老板最近看了一个关于F#的视频,并认为它看起来非常令人兴奋,他让我检查一下.我的问题是 - 在企业应用程序开发领域,函数式语言(如F#)有哪些优势可以超越OO语言(如C#)?
我真的想看看是否有任何令人信服的理由甚至开始考虑转变.一些F#和C#比较代码也可能很好看.
Bri*_*new 10
您可以在F#等函数式语言中更简洁地表达许多概念.
函数是第一类对象,可以直接应用于集合,以更有效地执行转换/过滤.
在函数式语言中鼓励不变性,这使得(例如)多线程代码更加可靠(您知道数据结构在您之下不会发生变化).
通过能够更可靠,更容易地编写多线程代码,可以更容易地利用多个处理器/内核(现在越来越重要的摩尔定律并不适用这么多).
请注意,您可以在F#中使用现有的C#对象.因此,您可能希望在F#和C#中的其他部分中编写代码的某些部分.您应该能够根据您的要求和每种方法的适用性进行混合和匹配.