作者:GhostComputing链接:https://www.zhihu.com/question/21144196/answer/44397463来源:知乎著作权归作者所有,转载请联系作者获得授权。Erlang 不仅仅是一门编程语言,它背后有强大的 OTP 开发框架作支持。Erlang 的语法概念简洁明了,除了一些FP方面的知识在首次学习时需要适应外,其他很多语法细节其实都非常容易上手。所以,单纯从语言层面上来说,Erlang 挺简单的。但是,Erlang 最大的用途是做分布式网络应用开发,用 Erlang 做开发不仅仅只是简单地用一门小众的语言来堆砌 A/B/C/D 语言也能描述的逻辑,而是要利用这门语言和提供的开发框架怎么去更好地搭建分布式平台,而你在这个开发过程所学习到的知识是跨语言、迁移性很强的;Erlang 生态圈中的很多开源代码非常具有研究和学习价值。比如cowboy,RabbitMQ,riak等等。如果你感兴趣,甚至可以深入 Erlang 语言的实现,去学习调度器是怎么实现的(C语言),去研究OTP的实现等等。Erlang 得天独厚的分布式网络开发特性让你有机会去深入研究网络开发的诸多细节,只要你学有余力。而且,研究之后得到的体会也是跨语言跨平台跨架构;作为一个工程师,必需善于思考总结和脚踏实地。当你选择学习 Erlang 的时候,你是在进行你的技术投资。但是,投资是有分轻重的。你可以短线持有,浮光掠影地玩一玩;也可以长线持有,为你提供稳定且增长的收益。特别是作为一个程序员,我们的技术生命不应该只局限于一种编程语言/框架/系统,我们要开阔视野,有容乃大。在把握好技术深度的前提下,到处探索计算机编程的乐趣,这难道不是一种难得的体验吗 ?当你有火候到了的时候,你还担心说你前些年从事的是 Erlang 编程工作,怕找不到工作吗 ?不要随便给别人贴标签,也不要随便给自己贴标签。作为一个工程师,朴实严谨地研究技术,开开心心地解决问题,这些都是快乐的本源(似乎离题了......)。Erlang我也是最近接触,并且下定决定一定要在今年之内入门,并且做一个小项目出来。现在我不能告诉你,学习这么语言有多挣钱,我只能告诉你,我为什么想学这么语言。Erlang,个人认为,更多的是做后台上的高性能高负载的服务。那么为什么不用其他的语言呢?因为现在的计算机CPU的单核运算速度,已经基本上可以说遇到瓶颈了。3.x,再往上提,散热就很成问题了。所以多核CPU就相对应的诞生了。但是面对多核服务器,其他的语言利用率就全看程序员个人了。Erlang则能够自动的分配资源,全面利用你的多核CPU,让运算速度无限趋近于最低值。所以掌握一门多线程语言,是很有必要的。而Erlang就是我选中的语言。好吧,我的表达可能会相对乱一些,凑合着看吧