在Elixir的学习过程当中,我发现实现一个功能有不少种方法,例如模式匹配是用多个函数定义,仍是用case,或是 if。有时候头脑会变得混乱,即便想好了程序的逻辑流程,仍是不知该怎么写,最后写出来的程序虽然可以实现,可是看起来很杂乱。函数
今天看了几个Elixir相关的视频,受益良多。尤为是Dave Thomas 的2014年Elixir conf上的演讲。讲到了如何写模式匹配。首先要列出须要特殊处理的参数,而后依此完善函数定义便可。另外要灵活使用匿名函数,能够有效减小代码量。学习
模式匹配和迭代是Elixir的精髓。视频