课程简介
简要了解本课程将学习的内容。
什么是 Elixir?
Elixir 是一种基于 Erlang 编程语言构建的并发函数式编程语言。它旨在支持应用程序的维护与扩展。Elixir 编译为字节码,并在 Erlang 的 BEAM 虚拟机上运行。
为什么采用 Elixir 存在挑战?
Elixir 相对年轻,但发展迅速,首批生产环境应用正在出现。然而,早期采用者可能会发现一些关键细节尚不完善。如同任何新兴语言一样,人们常会提出以下问题:
- 在什么阶段,Elixir 平台带来的潜在收益会超过其风险?
- 如何招募并培训从未接触过函数式语言的团队成员,以确保代码风格的一致性?
- 如何应对分布式系统中的权衡取舍?
- 专业开发者使用哪些工具进行测试、部署和应用性能度量?
- 哪些关键但不太流行的技术工具可用于解决外部代码集成或生产环境中性能权衡等问题?
本课程正是为解答这些问题而设计。
注意:Elixir 的采纳之所以困难,是因为上述诸多挑战的综合影响。它是一种函数式、并发且分布式的语言。任何一个概念本身都难以理解,而我们大多数人需要同时学习所有这些内容。但请保持信心,因为我们知道,已有许多团队成功完成了这一转型。
课程阶段
《采用 Elixir》并非聚焦于 Elixir 语言的某个狭窄方面,而是一门注重实践体验的课程,涵盖了许多新兴语言中难以找到的实际细节。换句话说,本课程更侧重于引导新 Elixir 开发者探索丰富的资源领域,而非重复已知的知识点。课程将整个采纳生命周期分为三个部分:
(此处为课程阶段示意图,展示从入门到进阶的完整路径)
随着课程推进,各章节将逐步深入技术细节。这是有意为之的设计——因为本课程旨在填补团队和客户日常工作中遇到的诸多空白。课程力求提供足够的理论基础,指引正确的解决方案方向,然后继续前进。
目标读者
本课程面向多种类型的读者,没有任何一位读者会发现所有内容都完全相关。团队负责人和技术管理者更关心如何招聘与培训人才,而纯程序员可能觉得这类信息过于分散注意力。来自 Java 或 Ruby 等传统语言的初学者,则迫切希望了解如何过渡到更函数式、更并发的语言。
注意:本课程非常适合那些身处技术 Elixir 社区、正准备或即将开始采用 Elixir 的人。
越来越多的 Elixir 开发者需要向成功的 Elixir 实践者学习。这包括日常开发人员,他们正寻求从其他语言迁移的帮助;也有经验丰富的程序员,首次将解决方案从实验性预发布服务器部署到生产环境,学习如何扩展系统规模,或开始尝试分布式架构以提升容错能力。我们无法保证你一定会喜欢课程中的每一部分内容,但可以肯定的是,你一定会找到某些感兴趣的内容,至少也会学到一些全新的知识。