F#在哪些领域“绝对没有使用意义"? [英] In what areas does F# make "absolute no sense in using"?
问题描述
Don Syme 在他的 SPLASH 演讲中说 F# 并不打算替代 C#,即使它具有通用功能.他接着说,有些领域使用 F# 没有意义,但没有在论文中展开.
Don Syme in his SPLASH talk says that F# is NOT intended to be a replacement for C# even though it has the general capabilities. He goes on to say that there are areas where F# makes no sense in using, but doesn't expand on the thesis.
- 谁能告诉我在使用 F# 时应该避免哪些区域?
- 您还可以提及 C# 的亮点.
相关问题:
推荐答案
我的看法是,更换像 C# 这样丰富和成熟的语言将非常昂贵.因此,例如,目前,如果使用 Visual Studio WinForms 设计器可以给您带来优势,那么 C# 绝对是 WinForms 开发的最佳选择:F# 没有 WinForms 设计器.
My take is that replacing a language as rich and mature as C# would be very expensive. So, for example, at the moment, C# is absolutely the best choice for WinForms development if using the Visual Studio WinForms designer can give you an advantage: F# has no WinForms designer.
C# 目前也有更好的 LINQ-to-SQL 支持.我相信还有很多其他的例子.
C# also has better LINQ-to-SQL support at the moment. I'm sure there are many other examples along these lines.
然后需要整个 C# 熟练劳动力将他们的技能更新为 F#,同时保留用于维护应用程序的 C# 技能,同样是昂贵的.
Then there is requiring the entire C# skilled workforce to update their skills to F#, while preserving C# skills for maintaining applications, again expensive.
最后,C# 是一种优秀的语言,具有许多强大的功能,一些 F# 甚至没有像 co/contra 变体泛型和针对 DLR 的动态编程的开箱即用支持(F# 只是有一个未实现的运算符).
Finally, C# is an excellent language with a lot of great features, some F# doesn't even have like co/contra variant generics and out of the box support for dynamic programming against the DLR (F# just has an unimplemented operator).
因此,通过不期望 F# 取代 C#,F# 可以以新的方式发展,而不是把所有时间都花在已经很好覆盖的领域追赶上.
So by not expecting F# to replace C#, F# can evolve in new ways instead of spending all it's time playing catch-up in areas already well-covered.
这篇关于F#在哪些领域“绝对没有使用意义"?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!