Learning resources

我们的网站提供了入门指南,以了解有关Elixir的基础的更多信息,并探索如何使用Mix和OTP构建项目.

Elixir社区还提供了大量资源,可以从不同背景和其他角度探索Elixir. 我们相信您会找到符合您的步调和兴趣的资源.

Books

Programming Elixir 1.6

Programming Elixir cover

本书是针对经验丰富的程序员的Elixir简介,针对Elixir 1.6及更高版本进行了全面更新. 在没有学术色彩的情况下探索函数式编程(再告诉我有关monad的信息). 创建并发应用程序,但使它们正确运行,而不会遇到所有锁定和一致性难题.

认识Elixir,这是一种在坚固的Erlang VM上构建的现代,功能性并发语言. Elixir的实用语法和对元编程的内置支持将使您的工作效率更高,并使您对长期的发展保持兴趣. 也许是时候迎接下一件大事了. 也许是长生不老药.

Elixir in Action

Elixir in Action cover

Elixir in Action is a tutorial book that aims to bring developers new to Elixir and Erlang to the point where they can develop complex systems on their own. No knowledge about Elixir, Erlang, or functional programming is required, but it is assumed that a reader has a few years of production experience using mainstream OO languages, for example C#, Java, Python, or Ruby.

本书从基本介绍Elixir语言和函数式编程习惯开始. 本书的中心部分讨论了Erlang VM和OTP,讨论了并发编程,容错和分布式系统等主题. 最后,您将学习如何将代码打包到组件中,创建独立的可发布版本以及对正在运行的系统进行故障排除. 通过一个简单的例子来说明该理论,该例子在整本书中逐渐扩展为一个完全独立的可发布系统.

Adopting Elixir

Programming Elixir cover

采用不仅仅是编程. Elixir是一种令人兴奋的新语言,但是要成功地从头到尾获取您的应用程序,您不仅需要了解该语言,还需要了解更多. 您需要本书中的案例研究和策略.

学习应用程序整个生命周期的最佳实践,从设计和团队建设到管理利益相关者,再到部署和监视. 超越语法和工具,学习从概念到生产开发Elixir应用程序所需的技术.

Introducing Elixir

Introducing Elixir cover

如果您想学习函数式编程,Elixir是一门极好的语言,通过本动手入门,您将发现Elixir多么强大和有趣. 该语言将Erlang的强大功能编程与类似于Ruby的语法结合在一起,并包含用于元编程的强大功能.

本书向您展示如何通过一次教授一种技能来编写简单的Elixir程序. 一旦掌握了模式匹配,面向过程的编程和其他概念,您就会明白为什么Elixir使得构建并发和弹性程序变得容易,而这些程序可以轻松地上下扩展.

The Little Elixir and OTP Guidebook

The Little Elixir and OTP Guidebook cover

《 Little Elixir&OTP指南》可帮助您开始使用Elixir和OTP编写应用程序. 您将从对Elixir语言语法的快速概述开始,以及足够有效地使用它的功能编程. 然后,您将直接研究OTP,并通过几个有趣的示例来了解它如何帮助您构建可伸缩,容错和分布式的应用程序. 快来重新发现使用Elixir进行编程的乐趣,并记住再次成为初学者的感觉.

Elixir Cookbook

Elixir Cookbook cover

This book is a set of recipes grouped by topic that acts as a reference to get ideas from or to quickly search for a solution to a problem. You will begin by launching an IEx session and using it to test some ideas. Next, you will perform various operations like loading and compiling modules, inspecting your system, generating a supervised app, and so on. Furthermore, you will be introduced to immutability, working with data structures, performing pattern matching, and using stream modules to generate infinite data sequences. You will learn about everything from joining strings to determining the word frequency in text. With respect to modules and functions, you will also discover how to load code from other modules and use guards and pattern matching in functions.

Elixir School

Elixir School

Elixir-School是一个受Twitter的Scala学校启发的开放式社区推动活动. 该网站的内容包括有关难度较高的各种Elixir主题的同行评审课程. 这些课程目前提供10多种语言的版本,以帮助非英语国家的人们更容易地进行Elixir编程.

Joy of Elixir

Joy of Elixir

《 Elixir的喜悦》是对编程的温和介绍,主要针对那些已经了解计算机知识但几乎没有编程经验的人.

本书将以一种有趣而有趣的方式教您Elixir编程语言的核心概念. 如果您是编程的新手,并且想学习如何利用编程的力量使计算机做事情,并且想在编程过程中体会到快乐,那么请阅读本书!

Learn Functional Programming With Elixir

Learn Functional Programming with Elixir cover

Elixir的语法简单易懂,并且本指南将为您提供学习现代函数式编程技术的简洁捷径. 不需要以前的函数式编程经验! 本书以适当的步伐向您介绍了正确的概念,同时探索了不可变的值和显式的数据转换,函数,模块,递归函数,模式匹配,高阶函数,多态性和故障处理,同时避免了副作用. 不要以命令式的心态登上Elixir火车! 为了充分利用功能性语言,您需要进行功能性思考. 这本书将带您到那里.

The Toy Robot Walkthrough

Toy Robot

玩具机器人是新程序员常用的面试练习. 这本简短的书将带您了解如何以BDD样式在Elixir中实现它,并在此过程中进行一些很好的解释和说明.

如果您是新的Elixir开发人员,并且已经阅读了一些基本的Elixir教程,并且正在寻找下一个提高技能的方法,那么这本书就是一个很好的开始. 它涵盖了从头到尾的玩具机器人练习,并在整个过程中使用Elixir功能(例如ExUnit和Doctests)进行测试.

Video/Interactive Resources

Pragmatic Studio's Elixir/OTP Course

Pragmatic Studio's Elixir/OTP Course

在The Pragmatic Studio的长达6小时的视频课程中,从头开始构建并发的容错应用程序时,将Elixir和OTP付诸实践. 通过使用真实的代码开发真实的应用程序,您将获得实践经验,将所有内容组合在一起以Elixir / OTP方式来编写应用程序.

本课程的前半部分重点介绍Elixir的核心方面,原理和技术. 在下半年,我们将超越基础知识,重点介绍使Elixir / OTP与众不同的因素:并发流程,参与者模型,OTP行为和故障恢复.

如果您不熟悉Elixir,则将以引人入胜的格式获得分步指南,在其他任何地方都找不到. 如果您有使用Elixir的经验,您将对自己认为理所当然的事情有更深入的了解,并填补任何知识空白.

Other Resources

Elixir Flashcards

Elixir Flashcards

Elixir抽认卡是一组精美制作,专业印刷,扑克大小的抽认卡,可帮助您掌握Elixir语言.

抽认卡是突出知识差距,识别误解或错误信念并帮助您记住关键概念的好方法. 在小组或团队中使用时,抽认卡可以帮助引发有趣的讨论,并帮助人们通过玩游戏以有趣的方式学习.

结合书籍,教程和屏幕录像,使用抽认卡是掌握Elixir的杀手combination.

Elixir Koans

Elixir Koans

Elixir koans是使用Elixir编程语言入门的一种有趣,简单的方法. 这是该语言的惯用语言.

Exercism.io

Exercism.io Elixir track

Exercism.io是一个开源平台,可提供多种语言的免费练习和指导,包括Elixir. 它的功能是由志愿者指导的,难度从弦乐处理到使用OTP的各种难度练习. 完成练习后,您还可以查看其他学生的解决方案.

Screencasts

Elixir Sips

ElixirSips cover

Elixir Sips是一个截屏视频系列,每周提供2个短视频-通常为2至7分钟,但有时更长. 视频包含各种主题,从探索标准库中的模块到尝试新项目,再到从头构建基于Web的Tetris游戏,不一而足.

目标受众包括从Elixir语言的新手到经验丰富的开发人员,这些开发人员希望获得不时思考的广泛主题.

LearnElixir.tv

LearnElixir.tv cover

LearnElixir.tv是一个电视广播系列,其中提供有关Elixir主要功能的深入分步视频. 视频长度为7到15分钟,每周发布一次.

它旨在通过逐步积累知识来帮助初学者熟悉Elixir的所有功能. 经验丰富的Elixir开发人员可能还会学到一两个技巧.

ElixirCasts.io

elixircasts.io cover

ElixirCasts是一系列简单的截屏视频的集合,涵盖了广泛的Elixir和Phoenix主题. 每个插曲都会解决一个特定的问题或探索一个新的库,并以一种易于理解的语言对其进行神秘化处理.

插曲涵盖了从初学者到较温和和高级的话题. 一次与我们一起建立您对Elixir的了解.

Alchemist Camp

Alchemist Camp cover

Alchemist Camp是免费的Elixir截屏的最大制作商,并在YouTube上进行了数十小时的截屏. 这些视频的格式通常较长,并且围绕项目进行,例如构建小型Phoenix克隆,或OTP工作者定期从多个API收集统计信息. 内容由查看者请求驱动.

Alchemist Camp的目标读者是具有一定的Web开发经验并希望在Elixir中交付实际项目的人们.

In-depth Resources

Metaprogramming Elixir

Metaprogramming Elixir cover

编写使用Elixir宏编写代码的代码. 宏使元编程成为可能,并定义了语言本身. 在本书中,您将学习如何使用宏以快速,可维护的代码扩展语言,并以您从未想到过的方式共享功能. 您将发现如何使用自己的一流功能扩展Elixir,优化性能以及创建特定于域的语言.

Erlang in Anger

Erlang in Anger cover

本书旨在作为战争时期如何成为Erlang军医的指南. 它首先是一系列技巧和窍门,可帮助您了解故障的根源,以及各种不同的代码片段和实践词典,可帮助开发人员调试在Erlang中构建的生产系统.

Designing Elixir Systems with OTP

Designing Elixir Systems with OTP cover

您知道如何使用Elixir进行编码. 现在学习思考. 学习设计具有智能层的库,这些层可以塑造正确的数据结构,从一个功能流到下一个功能,并提供正确的API. 采用与过去30多年来一直使我们的电话系统可靠,快速的OTP相同的OTP. 超越对OTP功能的了解,了解幕后发生的事情以及为何如此重要. 使用这些知识,本能地知道如何设计系统,以Elixir为重点,为您的用户提供快速,灵活的服务.

by  ICOPY.SITE