答案 0 :(得分:7)
这取决于您的学习和工作方式。
从技术上讲,F#不需要C#的任何支持。您可以编写任何类型的完整程序,而无需接触C#。
然而,网上很多F#资源都是为了从C#迁移到F#,因此根据两者之间的差异来表达。像“你之前在C#中做过这件事的事情,但是这里是如何在F#中做得更好”。
此外,许多.NET库都是用C#编写的。当然,二进制文件与F#完全兼容,因此您无需使用任何类型的特殊技巧来使用C#编写的库。但是,如果您想查看源代码,那么C#知识就会派上用场。
公平地说,有相当多的F#独立库,但大多数.NET库仍然在C#中。所以很有可能,你最终会使用它们中的一部分。你是否真的想看看它们的来源 - 这取决于你的风格。
答案 1 :(得分:7)
你绝对可以在纯F#中使用.NET Core。不需要C#知识,但要熟悉它以了解用法和库文档是有益的。
F#入门指南的section on using .NET Core只有“F#”,您可以将其作为起点。
至于撰写网站,我强烈建议您查看SAFE Stack介绍,文档和示例。它展示了如何只使用F#进行完整的堆栈Web开发,全部使用.NET Core。
答案 2 :(得分:1)
有些库我永远无法在F#中很好地工作,所以我倾向于在我的解决方案中内置一些C#项目来处理我在F#中找不到优雅方式的事情 - 比如使用高级别“Nest”Elasticsearch驱动程序。它旨在为您提供C#中非常优雅的代码,但我发现它与F#完全相反,有点击败使用高级驱动程序。
C#没什么好担心的,大部分都是可读和直观的。我在没有.NET知识的情况下进入了F#,并且在我没有任何麻烦的情况下学到了我所需要的东西。