Elixir快速介绍

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Elixir快速介绍相关的知识,希望对你有一定的参考价值。

Elixir:不老长寿药;万能药;炼金药。

Elixir-Lang, 设计者José Valim。

José Valim把一个语言起这个名字,表达了一个美好的愿望(妄想)。虽然我没有见到José Valim有明确的表达关于这个名字的含义,不过猜大概也猜得到了。

Elixir主页: http://elixir-lang.org/,目前公开的最新版本是1.2.x,1.2和之前的版本有一点比较重要的不同,比如map。所以要新学习elixir,最好直接从1.2入手。

Elixir当然是开源的,在github上能找到https://github.com/elixir-lang/elixir

Elixir由于设计者来自Ruby社区,所以也提供了包管理方式: hex。hex类似于ruby的gems和nodejs的npm,非常相似。

hex主页:https://hex.pm/

目前用elixir做的最有名的东西是http://www.phoenixframework.org/,是一个web后台框架,类似于ruby on rails。phoenixframework也是José Valim写的,相当于用ruby on rails的思想把这套东西用elixir实现了一遍。

当然phoenixframework也是开源的,代码在https://github.com/phoenixframework/phoenix

目前用elixir实现的大部分还不错的东西都集中在这里:https://github.com/h4cc/awesome-elixir。但是由于elixir是一门比较新的语言,这上面的许多代码并不成熟,最好不要直接拿来就用,还是要看看参考实现。

elixir可以和erlang互相调用,所以看一看erlang有什么好东西也是必要的:https://github.com/drobakowski/awesome-erlang

elixir的相关的书籍已经有了几本,但是中文版还没有看到,英文版的链接如下:

  • Programming Elixir 1.2, 著名的Dave Thomas写的。我觉得Dave写的书都可以看看,都非常不错。
  • Metaprogramming Elixir, 讲elixir提供的宏的。实际上日常写代码,宏用的比较少。但是如果要学习各种厉害的代码,比如phoenix等,就得了解宏的使用了。
  • Programming Phoenix, 讲Phoenix的,作者是Elixir设计者José Valim本人,就冲这个也值得一看。
  • Programming Erlang(2nd edition) ,Erlang设计者Joe Armstrong的著名书。想学习elixir,erlang是绕不过的。

elixir有且只有这么几本书要看而且能看,这是好事也是坏事,好事是一共就这几本,背都背下来了,坏事是参考资料并不多,学习起来要麻烦一点。

由于elixir实际上是增强了erlang的表达能力,而且几乎没有损失任何erlang提供的优点。所以elixir适合做erlang适合做的所有事情,并更加适合一些。

Elixir实际上糅合了各种前辈语言(common lisp,ruby, erlang等等)的特点。所以他实际上是一门实用语言,并不适合初学者初学。初学者如果以学习为目的,最好先多了解一些其他语言之后再来学习。

 

以上是关于Elixir快速介绍的主要内容,如果未能解决你的问题,请参考以下文章

简单Elixir游戏服设计- 游戏玩法介绍

[Elixir009]像GenServer一样用behaviour来规范接口

简单Elixir游戏服设计-玩法simple_poker

Laravel_Elixir_gulp任务利器安装

《Elixir in Action》书评及作者问答录(作者 Sergio De Simone ,译者 邵思华 发布于 9月29日)

匹配 Elixir 二进制文件中的多个部分以解析 HTTP/2.0 帧