你花了多少时间才能掌握Haskell?
我知道这个问题可能听起来很愚蠢,但我正在学习(至少尝试)Haskell大约4天。 我已经完成了http://learnyouahaskell.com/的阅读,现在我正在投入时间:Haskell逻辑,数学和编程之路,对我来说事情变得非常复杂。 我在函数式编程方面没有经验,只是一些关于Lisp的基础知识。
尽管我理解了这些概念,但是当我不得不写一些基本的代码时,总会有一片黑暗,我无法制定一个计划。 似乎有很多方法可以完成某项任务,但我无法表达自己。
经过4天的python,我可以编写复杂的脚本(不是'pythonic',但他们确实有效)。 在哈斯克尔工作4天后,我几乎是空白的。
有关如何提高我的功能技能的任何建议? 需要多长时间才能完全掌握Haskell?
大约2年后,Haskell的一些部分我很清楚(Ptr的东西,矢量库),我知道的一些区域只是危险的(模板haskell),还有一些我没有碰过(web框架,泛型)。 总体而言,我认为我很了解这门语言。
学习Haskell的一大难题是(非常陡峭的IMO)学习曲线。 有很多不同的相互关联的东西需要学习,然后才能在语言中发挥作用,并且因为它们相互关联,所以很难在没有至少几个月的经验的情况下获得良好的感觉。 我的建议是坚持下去,如果你认为你不明白某些事情,或者发生了更深层的事情,那么你可能是对的。 如果你现在无法弄清楚,那就在一个月左右的时间内继续前进。 最终你会在多个方面取得足够的进展,一切都应该变得清晰。
像任何语言一样,取得进展的最佳方式是编写代码。 这将花费更长的时间,因为Haskell远离您已知的语言,但这将是值得的。
那么在2年后,我仍然没有完全掌握关于Haskell的一切。 我可以编写“高级”程序(在开始学习Haskell大约2-3个月后),但人们不断想出新的东西来学习,这是Haskell乐趣的一部分:)
至于如何最好地学习,我总是喜欢边干边学。 在Hackage上浏览你感兴趣的代码(不要太大),然后尝试自己实现一些类似的东西(或子集)。 选择一个项目,你可以随着时间的推移不断添加更多的difficut层。
在大学进行了150小时的函数式编程课程后,我们做到了
所以我只是说基本知识,大约一个月全职。 四天没什么......我认为你只需要编写更多的代码来习惯功能性编程思维方式。 从底部到顶部实施一切,在获得经验的同时做更难的事情。
链接地址: http://www.djcxy.com/p/80789.html上一篇: How much time have you invested in order to have a good grasp on Haskell?