學習

Elixir 的官方文件包含 入門指南,可深入了解 Elixir 的基礎。稍後,它將探討如何使用 Mix 和 OTP 建置專案。Elixir 也包含 廣泛的 API 文件

Elixir 社群也製作了許多資源,可從不同的背景和觀點學習這門語言。我們在下方列出其中一些資源。我們確定您會找到符合自己的步調和目標的資源。

書籍

Elixir in Action

Elixir in Action cover

Elixir in Action 是一本教學書籍,旨在讓 Elixir 和 Erlang 的新手開發人員能夠自行開發複雜的系統。不需要具備 Elixir、Erlang 或函式程式設計的知識,但假設讀者有幾年使用主流 OO 語言(例如 C#、Java、Python 或 Ruby)的生產經驗。

本書從 Elixir 語言和函式程式設計慣用語的基本介紹開始。本書的核心部分探討 Erlang VM 和 OTP,討論並行程式設計、容錯和分散式系統等主題。最後,您將學習如何將程式碼封裝成元件、建立獨立的可部署版本,以及對執行中的系統進行疑難排解。理論透過一個簡化的範例進行說明,該範例會在整本書中逐漸擴充成一個完全獨立的可發布系統。

Programming Elixir 1.6

Programming Elixir cover

這本書是專為經驗豐富的程式設計師撰寫的 Elixir 簡介,已針對 Elixir 1.6 及更新版本完全更新。探索函式程式設計,而無需學術上的過度詮釋(再告訴我一次 monad 是什麼)。建立並行應用程式,但不用處理所有鎖定和一致性問題。

認識 Elixir,這是一種建立在堅如磐石的 Erlang VM 上的現代、函式、並行語言。Elixir 的實用語法和內建的元程式設計支援將讓您提高生產力,並讓您持續保持興趣。也許現在正是下一件大事的時機。也許就是 Elixir。

採用 Elixir

Programming Elixir cover

採用不只是程式設計。Elixir 是一種令人興奮的新語言,但若要成功地從頭到尾完成應用程式,你需要的知識不只是這門語言。你需要本書中提供的案例研究和策略。

學習應用程式整個生命週期的最佳實務,從設計和團隊建構,到管理利害關係人,再到部署和監控。超越語法和工具,學習從概念到生產所需的技術,以開發 Elixir 應用程式。

Elixir 的樂趣

Joy of Elixir

Elixir 的樂趣 是程式設計的溫和入門,目標讀者是已經具備一些電腦知識,但程式設計經驗少之又無的人。

本書將以有趣且令人愉快的形式,教你 Elixir 程式語言的核心概念。如果你完全沒有程式設計經驗,而且想學習如何利用程式設計的力量讓電腦做事,並在過程中體驗一些樂趣,那就讀這本書吧!

用 Elixir 學習函式程式設計

Learn Functional Programming with Elixir cover

Elixir 的直觀語法和這份導覽行程,為你提供一條乾淨、簡單的路徑,讓你學習現代函式程式設計技術。無需任何先前的函式程式設計經驗!本書以適當的步調引導你了解正確的概念,同時探索不變值和明確的資料轉換、函式、模組、遞迴函式、模式比對、高階函式、多型和錯誤處理,同時避免副作用。不要帶著命令式思維登上 Elixir 列車!若要充分利用函式語言,你需要以函式的方式思考。本書將帶領你達成目標。

玩具機器人演練

Toy Robot

玩具機器人 是新程式設計師常見的面試練習。這本簡短的書將帶你了解如何以 BDD 風格在 Elixir 中實作它,並在過程中提供一些很棒的說明和圖像。

如果你是一位已經完成一些基本 Elixir 教學的新 Elixir 開發人員,而且正在尋找下一項可以培養技能的事物,那麼這本書是一個很好的起點。它涵蓋了玩具機器人練習從頭到尾的內容,並在過程中使用 Elixir 功能(例如 ExUnit 和 Doctests)進行測試。

簡潔的 Elixir免費

Elixir Succinctly

Elixir Succinctly 是一本免費電子書,可開始學習 Elixir。它涵蓋了安裝、語言的第一步和語法。然後它描述 Erlang/OTP 平台,說明訊息、程序和 GenServer。最後一部分涵蓋建立 Elixir 範例應用程式的內容。

深入探討書籍

元程式設計 Elixir

Metaprogramming Elixir cover

使用 Elixir 巨集編寫撰寫程式碼的程式碼。巨集讓元程式設計成為可能,並定義語言本身。在本書中,您將學習如何使用巨集來擴充語言,以快速、可維護的程式碼和以您從未想過的方式分享功能。您將發現如何使用自己的第一類功能擴充 Elixir,最佳化效能,並建立特定領域語言。

使用 OTP 設計 Elixir 系統

Designing Elixir Systems with OTP cover

您知道如何使用 Elixir 編寫程式碼;現在學習如何思考它。學習設計具有智慧層的函式庫,這些層會塑造正確的資料結構,從一個函式流向下一個函式,並提供正確的 API。採用與過去 30 多年來讓我們的電話系統保持可靠且快速的相同 OTP。超越了解 OTP 函式,進而了解引擎蓋下的運作方式,以及其重要性。使用該知識,本能地知道如何設計系統,以快速且有韌性的服務提供給您的使用者,所有這些都專注於 Elixir。

Elixir 中的並發資料處理

Concurrent Data Processing cover

學習在 Elixir 中撰寫並發程式碼的不同方式,並提升應用程式的效能,同時不犧牲可擴充性或容錯性。大多數專案受益於執行背景工作和並行處理資料,但 OTP 和各種函式庫的世界可能具有挑戰性。要使用哪個監督程式和策略?GenServer 呢?也許您需要反壓,但 GenStage、Flow 或 Broadway 是更好的選擇嗎?您將學習回答這些問題所需知道的所有內容,立即開始建立高度並發的應用程式,並撰寫不僅快速,而且具有錯誤韌性和易於擴充的程式碼。

Erlang in Anger免費

Erlang in Anger cover

這本書旨在成為戰時擔任 Erlang 醫生的簡要指南。它首先是一系列提示和技巧,有助於了解故障的來源,以及一個不同的程式碼片段和實務範例字典,協助開發人員除錯以 Erlang 建置的生產系統。

課程

Elixir School免費

Elixir School

Elixir-School 是由 Twitter 的 Scala School 所啟發,一個開放且由社群推動的計畫。該網站的內容包含同行審查的課程,涵蓋各種 Elixir 主題,難度不一。這些課程目前提供超過 10 種語言,協助非英語人士更輕鬆地學習 Elixir 程式設計。

Pragmatic Studio 的 Elixir/OTP 課程

Pragmatic Studio's Elixir/OTP Course

在這個 Pragmatic Studio 提供的 6 小時影片課程中,從頭開始建置一個並行容錯應用程式,將 Elixir 和 OTP 付諸實行。透過使用真實程式碼開發一個真實的應用程式,您將獲得實務經驗,將所有部分組合在一起,以 Elixir/OTP 的方式製作應用程式。

課程的前半段著重於 Elixir 的核心面向、原則和技術。在後半段,我們將超越基礎知識,專注於讓 Elixir/OTP 與眾不同的部分:並行處理、執行者模型、OTP 行為和錯誤復原。

如果您是 Elixir 新手,您將以其他地方找不到的引人入勝格式獲得逐步指導。如果您有使用 Elixir 的經驗,您將對您視為理所當然的事情有更深入的了解,並填補任何知識空白。

grox.io 的 Elixir 課程

grox.io's Multi-Format Elixir Course

學習複雜的概念(例如程式語言)最適合使用多種格式。Groxio 的學習方法採用互動式迷你書供初學者使用、影片概述供新手使用、線上書籍供呈現較高層級概念使用、影片搭配現場編碼模擬進階配對程式設計,透過對初學者和專家有意義的專案進行。

Elixir 模組是一個完整的程式,包含一本 80 頁的書、8 部影片、數十個練習和兩個完整的測試優先專案。初學者可以學習這門語言,而專家可以填補典型的盲點,例如撰寫符號、建置巨集和使用串流。

grox.io 的 OTP 課程

grox.io's Multi-Format OTP Course

這門課程透過展示一個將專案分解為層級的系統,從設計的角度教授 OTP。這門課程以一本 60 頁的書、12 支影片、專案和精心挑選的連結為基礎,深入探討棘手的 OTP 概念。

了解背壓運作的方式、深入監督樹狀結構,並學習建立動態監督。第一次學習 OTP,或透過閱讀書籍、觀看影片,以及使用 Groxio 融合媒體進行引導式專案,建立基本概念來強化你的直覺,讓你從新手變成專家。

ThinkingElixir.com 的模式配對課程免費

ThinkingElixir.com's Free Pattern Matching Course

模式配對是一項非常強大的語言功能。它內建在 Elixir 的幾乎每個角落。為了讓你甚至能閱讀 Elixir 程式碼並理解,你必須了解模式配對。

一旦你「理解」模式配對,它就會感覺像是一種超能力。模式配對讓新的編碼模式成為可能。你開始忘記你在其他語言中使用的一些模式,因為現在你可以建立比以前更清晰、更簡潔的程式碼!

這門課程涵蓋使用 Elixir 的設定、資料類型、如何對每個資料類型進行模式配對,以及更多!包含的 TDD 專案可以幫助你輕鬆應用你所學到的知識。

LearnElixir.tv

LearnElixir.tv cover

LearnElixir.tv 是一門影片課程,提供有關 Elixir 主要功能的深入、逐步影片。影片長度從 7 到 15 分鐘不等。

它旨在透過逐步建立知識,幫助初學者熟悉 Elixir 的所有功能。經驗豐富的 Elixir 開發人員也可能會學到一兩個技巧。

Educative.io 的 Elixir 元程式設計課程

Educative.io's Metaprogramming in Elixir Course

了解元程式設計的概念。透過探索 Elixir 中巨集系統的全部潛力,學習如何提升你的程式設計技能。從根本上了解元程式設計的內涵,並透過使用更少的程式碼來撰寫令人難以置信的函式庫。

Learn-Elixir.dev

Learn-Elixir.dev cover

按照自己的步調,完成 132 支影片、30 個測驗、9 項作業和 2 個你選擇的主要專案,以展示你對生產級別程式碼品質的工作知識。你將學習語法/基礎、REST、使用 Absinthe 的 GraphQL、Phoenix、OTP、測試、Ecto、架構、如何擴充、如何進行分散式處理,以及更多…

每週三太平洋時間中午 12:00 加入我們的現場指導課程,填補知識差距並獲得你特定問題的具體解答!

創辦你的新創公司、遷移程式碼庫、建立那個應用程式!我們的期中和期末專案為你創造了一個雙贏的場景,讓你完成你的個人專案,同時精通這門語言。或者,如果你更專注於職涯,我們可以提供推薦、建議或參考資料,並在 GitHub 上託管你完成的專案,向徵才經理展示你精通 Elixir 程式設計。

螢幕錄製

ElixirStreams免費

elixir streams cover

ElixirStreams 提供免費的影片提示(不到 3 分鐘!),涵蓋各種 Elixir 和 Phoenix 主題。這些影片有助於你在學習新工具和技巧時磨練你的技能,並讓你隨時了解這門語言的最新發展。

ElixirCasts.io免費

elixircasts.io cover

ElixirCasts 是一系列簡單的螢幕錄製影片,涵蓋廣泛的 Elixir 和 Phoenix 主題。每集都解決特定問題或探索新的函式庫,並以易於理解的語言破解它。

影片從初學者焦點到更適中的進階主題。來和我們一起建立你的 Elixir 知識,一次一集。

Alchemist Camp免費

Alchemist Camp cover

Alchemist Camp 是免費 Elixir 螢幕錄製影片的最大製作方,在 YouTube 上有數十小時的螢幕錄製影片。這些影片通常較長且專注於專案,例如建立小型 Phoenix 克隆或定期從多個 API 收集統計資料的 OTP 工作人員。內容由觀眾要求驅動。

Alchemist Camp 針對具備一些網路開發經驗並希望在 Elixir 中發布實際專案的人員。

其他資源

Elixir 快閃卡

Elixir Flashcards

Elixir 快閃卡是一組製作精良、專業印刷、撲克牌大小的快閃卡,可幫助你精通 Elixir 語言。

快閃卡是突顯知識差距、找出錯誤觀念或錯誤信念,並幫助你記住關鍵概念的好方法。在小組或團隊中使用時,快閃卡可以激發有趣的討論,並幫助人們透過玩遊戲以有趣的方式共同學習。

結合書籍、教學課程和螢幕錄製影片,使用快閃卡是精通 Elixir 的絕佳組合。

Elixir 公案免費

Elixir Koans

Elixir 公案是一種有趣、輕鬆的方式來入門 Elixir 程式語言。它是該語言的慣用語導覽。

Exercism.io免費

Exercism.io Elixir track

Exercism.io 是提供許多語言(包括 Elixir)的免費練習和指導的開源平台。它提供從字串處理到使用 OTP 的各種難度練習,並由志工指導。完成練習後,你也可以查看其他學生的解答。

Running in Production Podcast免費

Running in Production Podcast

Running in Production 是開發人員和工程師討論在生產環境中執行小型和大型 Elixir/Phoenix 網路應用程式的播客。

主題包括技術堆疊、成功案例、經驗教訓和部署秘訣。

© 2012–2024 Elixir 團隊。
Elixir 和 Elixir 商標是 Elixir 團隊的註冊商標