Build a Binary Clock with Elixir and Nerves: Use Layering to Produce Better Embedded Systems
暫譯: 使用 Elixir 和 Nerves 建立二進位時鐘:利用分層技術提升嵌入式系統的品質
Hunleth, Frank, Tate, Bruce
- 出版商: Pragmatic Bookshelf
- 出版日期: 2022-09-06
- 售價: $1,390
- 貴賓價: 9.5 折 $1,321
- 語言: 英文
- 頁數: 108
- 裝訂: Quality Paper - also called trade paper
- ISBN: 1680509233
- ISBN-13: 9781680509236
-
相關分類:
Functional-programming、嵌入式系統
海外代購書籍(需單獨結帳)
相關主題
商品描述
Want to get better at coding Elixir? Write a hardware project with Nerves. As you build this binary clock, you'll build in resiliency using OTP, the same libraries powering many commercial phone switches. You'll attack complexity the way the experts do, using a layered approach. You'll sharpen your debugging skills by taking small, easily verified steps toward your goal. When you're done, you'll have a working binary clock and a good appreciation of the work that goes into a hardware system. You'll also be able to apply that understanding to every new line of Elixir you write.
Combining software with hardware can be frustrating, but you can become proficient in no time by taking a simple, logical approach. Blinking a single LED is the traditional hello-world of embedded systems. Building your own binary clock is the logical next step. It blinks groupings of LEDs based on the system time. This guide walks you through a working project using the techniques used by experts who build software for hardware every day.
This common sense project moves forward in tiny, logical steps. As you progress, you can verify each step before moving on to the next. You don't have to be a Nerves novice to benefit from this project. Become a better Elixir programmer as you build your own desktop showpiece. With a layered approach to software design, you'll learn to control the complexity of your programs the way the experts do by focusing on one small slice of your system at a time.
When you're done, you'll have your own binary clock, and also more of the tools you need to design and build your own Nerves and Elixir projects. You'll also be a better programmer with a deeper appreciation of layering techniques for controlling complexity.
What You Need:
This project is for Elixir developers who want to get started with Nerves, or improve their skills. The project is designed for Elixir 1.11 and Nerves 1.7, but later versions will probably work as well with slight modifications. The project uses a Raspberry Pi zero with a set of components. With slight modifications, you can make this book work with other components as well.
商品描述(中文翻譯)
想要在 Elixir 編程上更進一步嗎?使用 Nerves 寫一個硬體專案。當你建造這個二進位時鐘時,你將利用 OTP 建立韌性,這是許多商業電話交換機所使用的相同函式庫。你將像專家一樣以分層的方法來應對複雜性。你將通過採取小而易於驗證的步驟來磨練你的除錯技能。當你完成時,你將擁有一個可運作的二進位時鐘,並對硬體系統的工作有更深的理解。你也將能夠將這種理解應用到你所編寫的每一行 Elixir 代碼中。
將軟體與硬體結合可能會令人沮喪,但如果採取簡單且合邏輯的方法,你可以迅速變得熟練。閃爍單個 LED 是嵌入式系統的傳統 hello-world。建造自己的二進位時鐘是邏輯上的下一步。它根據系統時間閃爍 LED 的組合。本指南將引導你完成一個使用專家每天為硬體構建軟體所用技術的工作專案。
這個常識專案以微小且合邏輯的步驟向前推進。隨著你的進展,你可以在進入下一步之前驗證每一步。你不必是 Nerves 的新手就能從這個專案中受益。當你建造自己的桌面展示品時,成為一個更好的 Elixir 程式設計師。透過分層的軟體設計方法,你將學會像專家一樣控制程式的複雜性,專注於系統的一小部分。
當你完成時,你將擁有自己的二進位時鐘,並且擁有設計和建造自己的 Nerves 和 Elixir 專案所需的更多工具。你也將成為一個更好的程式設計師,對於控制複雜性的分層技術有更深的理解。
你需要的東西:
這個專案是為想要開始使用 Nerves 或提升技能的 Elixir 開發者設計的。該專案是為 Elixir 1.11 和 Nerves 1.7 設計的,但稍後的版本可能也能在稍作修改後正常運作。該專案使用 Raspberry Pi zero 和一組元件。經過小幅修改,你也可以使這本書與其他元件一起使用。
作者簡介
Frank Hunleth is an embedded systems programmer, OSS maintainer, and Nerves core team member. When not in front of a computer, he loves running and spending time with his family.
Bruce A. Tate is a programmer and CEO of Groxio where he is helping to redefine how computer languages are taught and learned. He's the author of Seven Languages in Seven Weeks, Programming Phoenix LiveView, among other titles, and has been involved with Elixir from the very beginning.
作者簡介(中文翻譯)
Frank Hunleth 是一位嵌入式系統程式設計師、開源軟體維護者以及 Nerves 核心團隊成員。當他不在電腦前時,他喜歡跑步和與家人共度時光。
Bruce A. Tate 是一位程式設計師及 Groxio 的執行長,他正在幫助重新定義電腦語言的教學與學習方式。他是 七種語言七週學、Programming Phoenix LiveView 等書籍的作者,並且從一開始就參與 Elixir 的開發。