合聚咖

合聚咖

为什么有人怎么说:学会C和Haskell,别的就都容易了。学会了这两门一周之内学会Java

admin

如果真的学会了这两门,现代的大多数语言基本都可以很快转型上手

c是过程式编程的典范,很多学校用来做计算机编程的入门,掌握c语言的语法对c系列的语言(c++, java等)都有好处,c语言的学习过程中也能对计算机的内存管理、资源分配也都能有一定了解,这些基础知识能让你快速转型到c系列的其它语言,不会有太多障碍。

haskell是函数式编程的典范,非常冷门,晦涩艰深。好处是代码精练,逻辑清晰,适合并发。是做计算机和数学理论研究的好语言。几本上没有什么商业和工业应用,生态环境不好。要想玩的溜,没有一两年功夫是不可能的,而且前提是数学基础足够好。跟现在广泛应用的编程语言大不一样,有其它语言的基础不会给你任何学习门槛的降低(好吧,lisp系语言的基础还是有很大帮助的)。但是,haskell却影响了很多其它语言,很多现代编程语言从haskell吸取了营养,变得更简练了(python的列表解析是非常好的例子)。总之,如果你不是搞偏理论的研究,这门语言没必要做为入门,最好是作为有了一定水平以后,再来从里面找一些感兴趣的东西学习。

另外这两门语言都不涉及面向对象,如果没有面向对象的基础,就算你精通这两门语言(可以称为神人了),一个星期搞定java也只是笑谈,毕竟面向对象的高级知识水也很深的。当然,你能掌握c和haskell,java稍微多花点时间积累一下,就能搞定了,毕竟难度低太多。