【问题标题】:Getting started with F# [closed]F# 入门 [关闭]
【发布时间】:2012-08-12 01:29:50
【问题描述】:

我该如何进入 F# 编程?

有哪些好的入门示例可以学习该语言,或者了解它相对于其他语言的一些优势?

我需要哪些工具(例如 Windows、Visual Studio、...)?

【问题讨论】:

  • 如果有 120 票赞成,是否应该重新提出这个问题?它为一个已经阅读了很多次的好问题提供了很好的答案。

标签: f#


【解决方案1】:

官方入口在这里:Microsoft F# Developer Center

如需快速体验,请考虑trying F# in your browser (Silverlight)。 (包含交互式教程演练)

从观看视频和演示开始(顺便说一句,Luca Bolognese 的An Introduction to Microsoft F# 仍然是该主题的最佳演示之一)。然后阅读以下两本必读书籍:

除此之外……

快速链接

社区

问答

博客/出版

聚会小组

视频

其他书籍

需要的工具

Visual Studio:

  • VS2010 和 VS2012 专业版内置了 F#。
  • F# 可作为 Visual Studio 2012 Express for Web 的附加组件使用。
  • 您也可以安装 VS2010 集成外壳 (free download)。然后安装CTP MSI,获得免费的 VS2010 版本的 F# 2.0。

单声道开发:

  • 您可以在 MonoDevelop here 中找到有关使用 F# 的大量信息。 F# 编译器和 fsi.exe 现在是 Mono 发行版的 part

【讨论】:

  • 我还没有遇到过编程方面的“必读”书籍,因此我对此类书籍推荐持怀疑态度...
  • 如果将其添加到标签信息中会怎样? stackoverflow.com/tags/f%23/info
  • 如果有帮助的话,和我自己发现,我使用不同的书籍用于不同的目的。专家 F# 更多地作为参考(虽然不是纯粹的参考)来查找东西,从 F# 开始作为一本文化书籍,无论我阅读哪一章,我都总是学到一些非常有用的东西,甚至是基本的东西,以及 RWFP作为一个主题的总结。
  • 我也强烈推荐 Jon Harrop 的书。真的很重要,在算法方面有很好的基础知识。 0% 浪费。 Jon 也喜欢 noobie。
  • @H.B.我认为有必须阅读的内容,但这些内容不够基础和一般,不足以让恕我直言
【解决方案2】:

我学习 F# 的方式是通过以下 3 个步骤。

首先,我浏览了Try F# 网站上的介绍,该网站对语言的语法和风格进行了很好(但很轻松)的交互式介绍。

接下来,为了体验用语言实际解决问题,我开始解决Project Euler 网站上的一些难题。我解决了前十个问题,在每个成功的问题之后,我查找了一个替代的 F# 实现here。这让我们对如何使用序列和使用递归有了很好的感觉,并且通常对语法感到满意。

最后,我在 http://fsharpforfunandprofit.com/ 上阅读了真正出色的 30 点指南 Why use F#。它带您逐步了解该语言的所有主要部分,描述如何利用它们 - 着眼于 C# 开发人员。之后,我鼓励您四处寻找网站上的其他资源,它们都写得非常好,而且很有见地。

完成这些步骤后,您应该准备好开始在 F# 中创建一个真正的项目。

【讨论】:

  • 我真的很喜欢欧拉的推荐。实际解决问题是(对我而言)真正深入研究的最佳方式。fsharpforfunandprofit 也是一个很好的资源,我发现它也很有帮助。
  • 在 euler 项目示例中,f# 的解决方案似乎不是最高效的。问题一的表现要好得多: let problem1 = [1..999] |> List.filter (fun x -> (x % 5 = 0 || x % 3 = 0)) |> Seq.sum;;我建议测量您的解决方案和提供的解决方案的时间。 stackoverflow.com/questions/4528355/…
  • 我也是这样做的。学习了一点语言/语法/思维方式,然后去了 Project Euler。
【解决方案3】:

Brian 已经列出了一个很棒的列表,但我谦虚地为丰富的 F# 学习材料生态系统提交我自己的小贡献,F# Koans- 一种通过测试学习 F# 语言的简单、有趣和互动的方式。

【讨论】:

  • +1 这是对基本概念的很好的互动介绍,期待一些高级的koans。
  • 谢谢。我从 koans 那里学到了很多东西,我会对一些高级的完全感兴趣。
猜你喜欢
  • 2011-02-28
  • 2023-03-04
  • 2012-08-11
  • 2011-07-25
  • 2010-09-26
  • 2014-06-29
  • 2011-03-25
  • 2011-03-15
  • 2014-02-14
相关资源
最近更新 更多