接触 Elixir 一年多了,入门只需要一周,真正适应一个新的语言大概还是要一年多吧。我发现 Elixir 从 TIOBE 排行榜百名消失了,似乎我原来的估计过于乐观了。国内也比较冷清,不过 Elixir 还是在继续发展。
Erlang 是一个古老而神秘的城堡,Elixir 为它打开了新的一扇门,迎来了更多的寻奇访幽的游客。
我对 Elixir 的态度没变,仍然是我的首选。
新出现的 mipha 论坛看上去不错,可惜也很冷清。
最近看视频发现了一位很好的老师,Grossi,他的演讲相当清晰:
Processes and Supervision in Elixir by Steve Grossi @ Lessonly
他介绍了 Elixir,并用两个例子演示了并发,以及 GenServer,GenStage 这些比较难懂的东西。
我补充一下,elixir 的返回与 ruby 不大一样,一开始感觉费解。可以查询 GenServer 文档,就明白了。
用命令,b。
b GenServer.handle_call
返回结果如下,result 才是结果,new state 是更新状态。
{:reply, result, new_state}
希望 mipha 论坛能热闹起来,大家多分享一些东西,期待 Elixir 会议早日来到中国。
感觉还是 Elixir 既是小众语言,又没有什么杀手级应用的缘故。像 Web 开发,Rails 发展到现在都很成熟,没有什么理由非要用 Phoenix;至于做高负载系统,Go、C++ 感觉够用了,而且基于招人考虑,感觉会选 Elixir 的基本没有。 不过我还是很喜欢 Elixir,第一次接触函数式编程的缘故,Pattern Match 感觉很新鲜。这几天刚看完了官网的 Guide,接下来准备看完 Phoenix 的 guide。Elixir 作为兴趣还行,如果想靠它找工作怕是不容易。
生态才是关键。 js 为什么火?因为 npm 上什么都有。
这种小众语言除非有个代码狂魔一样的干爹,否则设计的再好也没用。因为没那么多时间造轮子。
同样的事情你可以对比 React Native 和 Flutter。 后者的生态刚起步,很多轮子缺乏功能、测试。遇到坑只能默默吞下。
我觉得有时间还不如拥抱 JVM 语言和 Python。
生态是可以改善的吧。Elixir 代表的是未来,吸取了各个语言的长处。当然不是说别的语言没有未来,呵呵。
有一个数据,github 上的贡献者 Elixir 有七百多了,Node 是两千多,不知道能否说明一些问题。java 和 python 似乎都不在 github 上。
Java 听说增加了函数型的特征,不过 Elixir 选择了函数范型,我支持这个做法。
《Programming Elixir》那本书感觉写得不好,内容组织得不好,反而重点没讲清楚。 而且过于炫技,用了一些难度大的例子,让初学者有挫败感,退而止步。
应该用一些简单的例子,重点讲清楚并发编程的基础就是 Process。
如果条件不具备就暂缓吧,还是有个过程,水到渠成。 mipha 不错。可能的话,你先运营吧,别人才好参与啊。就是一个域名和阿里云的费用吧,还缺什么跟大家提吧。
我现在还不能完全看懂 phoenix 代码,今天试验 Ecto+sqlite 也通不过,困难重重。