From Ruby to Elixir: Unleash the Full Potential of Functional Programming 🔍
Stephen Bussey
Pragmatic Bookshelf, 1, 2024
英语 [en] · PDF · 4.3MB · 2024 · 📘 非小说类图书 · 🚀/lgli/lgrs/zlib · Save
描述
Elixir will change the way you think about programming. Use your Ruby experience to quickly get up to speed so you can see what all of the buzz is about. Go from zero to production applications that are reliable, fast, and scalable. Learn Elixir syntax and pattern matching to conquer the basics. Then move onto Elixir's unique process model that offers a world-class way to go parallel without fear. Finally, use the most common libraries like Ecto, Phoenix, and Oban to build a real-world SMS application. Now's the time. Dive in and learn Elixir. Whether you're a seasoned Ruby developer looking to expand your skill set or a programming beginner looking for a solid foundation in Elixir, this book has what you need to get up to speed quickly. Elixir is a functional language with a fairly small footprint. This makes it easier to learn and put into production than other languages. Plus, it's built on forty-year-old foundations that give your applications rock-solid stability. The first part of this book is all about developing expertise in the language. Learn about the core data types, build application data structures, enumerate over data, and use pattern matching to control the flow of an application. Elixir has an amazing process model that allows for (actually) easy parallel processing. Learn how to tap into this process model so you can leverage that power yourself. The second part of this book builds a real-world application using the most important libraries in a web developer's toolbox. Each library is compared to its similar Ruby library so you'll quickly see similarities and differences. We'll use Ecto, Phoenix, and Oban to build a SMS application powered by Twilio. What are you waiting for? Tap into your Ruby knowledge and start building scalable Elixir applications today. What You Need: You'll need Elixir 1.14+ and Erlang/OTP 24+ installed on a Mac OS X, Linux, or Windows machine.
备用文件名
lgrsnf/Sanet.st_From_Ruby_to_Elixir_-_Stephen_Bussey.pdf
备用文件名
zlib/Computers/Programming/Stephen Bussey/From Ruby to Elixir: Unleash the Full Potential of Functional Programming_28911039.pdf
备选作者
Bussey, Stephen
备用出版商
Pragmatic Programmers, LLC, The
备用出版商
GLOBAL ENTERTAINMENT SRL
备用出版商
O'Reilly Media
备用版本
United States, United States of America
备用版本
Italy, Italy
元数据中的注释
True PDF
备用描述
Cover
Table of Contents
Acknowledgments
Introduction
Who Should Read This Book?
About This Book
About the Code
Online Resources
Part I—Fundamentals of Elixir
1. Why Elixir? Why Now?
The Joy of Ruby
The Case for Elixir
Erlang, OTP, Elixir, and Friends
Install Elixir on Your Computer
Write Your First Elixir Code
Wrapping Up
2. New Language, New Syntax
The Big Picture
Data Types
Operators
Module and Function Basics
Fun with Functions
Capturing Functions
Advanced Module Keywords
Compile Time vs. Runtime
Wrapping Up
3. Working with Data
Lists—Not Arrays
Maps—Your Data Layer Foundation
Implementing Data Structures
Enumerating Data Structures
Wrapping Up
4. Pattern Matching Your Way to Success
Pattern Matching Basics
Use Patterns for Control Flow
Level Up Your Functions
Wrapping Up
5. GenServers: Build Cities, Not Skyscrapers
Parallelism vs. Concurrency
Explore Elixir Processes
Go Parallel with GenServers
Be Parallel, Be Cautious
Build Cities, Not Skyscrapers
Wrapping Up
Part II—Tools of the Trade
6. Persisting Data with Ecto
What Will We Build?
The Foundations of Ecto
Write an Ecto Schema
Use Migrations to Create Database Tables
Use Changesets to Persist Data
Query Data with Ecto.Query
Put Everything in a Context
Wrapping Up
7. Serving Requests with Phoenix
Explore the Foundations of Phoenix
Route Requests Through Phoenix
Serve Requests with Phoenix Controllers
Manage Static Assets
Use Components to Keep Your User Interface Clean
Phoenix Is More Than Controllers
Wrapping Up
8. Outbound HTTP Requests with Req
Decide on Which HTTP Client to Use
Prep Your Project for Req
Use Req to Make Requests
See Your App in Action
Wrapping Up
9. Asynchronous Jobs with Oban
Understand Async Job Systems
Explore Asynchronous Jobs in Elixir
Implement an Oban Worker
More About Oban
Wrapping Up
10. Testing Elixir
Create Your First Test
Test an Ecto Query
Test External API Requests
Test Phoenix Requests
Test Oban Jobs
Wrapping Up
11. The Future of Elixir
Deployment and Observability
Real-Time Apps with LiveView
GraphQL with Absinthe
Machine Learning with Nx and Bumblebee
Type Systems
Wrapping Up
The End of Our Journey
Bibliography
Index
– SYMBOLS –
– A –
– B –
– C –
– D –
– E –
– F –
– G –
– H –
– I –
– K –
– L –
– M –
– N –
– O –
– P –
– Q –
– R –
– S –
– T –
– U –
– V –
– W –
Table of Contents
Acknowledgments
Introduction
Who Should Read This Book?
About This Book
About the Code
Online Resources
Part I—Fundamentals of Elixir
1. Why Elixir? Why Now?
The Joy of Ruby
The Case for Elixir
Erlang, OTP, Elixir, and Friends
Install Elixir on Your Computer
Write Your First Elixir Code
Wrapping Up
2. New Language, New Syntax
The Big Picture
Data Types
Operators
Module and Function Basics
Fun with Functions
Capturing Functions
Advanced Module Keywords
Compile Time vs. Runtime
Wrapping Up
3. Working with Data
Lists—Not Arrays
Maps—Your Data Layer Foundation
Implementing Data Structures
Enumerating Data Structures
Wrapping Up
4. Pattern Matching Your Way to Success
Pattern Matching Basics
Use Patterns for Control Flow
Level Up Your Functions
Wrapping Up
5. GenServers: Build Cities, Not Skyscrapers
Parallelism vs. Concurrency
Explore Elixir Processes
Go Parallel with GenServers
Be Parallel, Be Cautious
Build Cities, Not Skyscrapers
Wrapping Up
Part II—Tools of the Trade
6. Persisting Data with Ecto
What Will We Build?
The Foundations of Ecto
Write an Ecto Schema
Use Migrations to Create Database Tables
Use Changesets to Persist Data
Query Data with Ecto.Query
Put Everything in a Context
Wrapping Up
7. Serving Requests with Phoenix
Explore the Foundations of Phoenix
Route Requests Through Phoenix
Serve Requests with Phoenix Controllers
Manage Static Assets
Use Components to Keep Your User Interface Clean
Phoenix Is More Than Controllers
Wrapping Up
8. Outbound HTTP Requests with Req
Decide on Which HTTP Client to Use
Prep Your Project for Req
Use Req to Make Requests
See Your App in Action
Wrapping Up
9. Asynchronous Jobs with Oban
Understand Async Job Systems
Explore Asynchronous Jobs in Elixir
Implement an Oban Worker
More About Oban
Wrapping Up
10. Testing Elixir
Create Your First Test
Test an Ecto Query
Test External API Requests
Test Phoenix Requests
Test Oban Jobs
Wrapping Up
11. The Future of Elixir
Deployment and Observability
Real-Time Apps with LiveView
GraphQL with Absinthe
Machine Learning with Nx and Bumblebee
Type Systems
Wrapping Up
The End of Our Journey
Bibliography
Index
– SYMBOLS –
– A –
– B –
– C –
– D –
– E –
– F –
– G –
– H –
– I –
– K –
– L –
– M –
– N –
– O –
– P –
– Q –
– R –
– S –
– T –
– U –
– V –
– W –
开源日期
2024-06-18
We strongly recommend that you support the author by buying or donating on their personal website, or borrowing in your local library.
🚀 快速下载
成为会员以支持书籍、论文等的长期保存。为了感谢您对我们的支持,您将获得高速下载权益。❤️
- 高速服务器(合作方提供) #1 (推荐)
- 高速服务器(合作方提供) #2 (推荐)
- 高速服务器(合作方提供) #3 (推荐)
- 高速服务器(合作方提供) #4 (推荐)
- 高速服务器(合作方提供) #5 (推荐)
- 高速服务器(合作方提供) #6 (推荐)
- 高速服务器(合作方提供) #7
- 高速服务器(合作方提供) #8
- 高速服务器(合作方提供) #9
- 高速服务器(合作方提供) #10
- 高速服务器(合作方提供) #11
- 高速服务器(合作方提供) #12
- 高速服务器(合作方提供) #13
- 高速服务器(合作方提供) #14
- 高速服务器(合作方提供) #15
- 高速服务器(合作方提供) #16
- 高速服务器(合作方提供) #17
- 高速服务器(合作方提供) #18
- 高速服务器(合作方提供) #19
- 高速服务器(合作方提供) #20
- 高速服务器(合作方提供) #21
- 高速服务器(合作方提供) #22
🐢 低速下载
由可信的合作方提供。 更多信息请参见常见问题解答。 (可能需要验证浏览器——无限次下载!)
- 低速服务器(合作方提供) #1 (稍快但需要排队)
- 低速服务器(合作方提供) #2 (稍快但需要排队)
- 低速服务器(合作方提供) #3 (稍快但需要排队)
- 低速服务器(合作方提供) #4 (稍快但需要排队)
- 低速服务器(合作方提供) #5 (无需排队,但可能非常慢)
- 低速服务器(合作方提供) #6 (无需排队,但可能非常慢)
- 低速服务器(合作方提供) #7 (无需排队,但可能非常慢)
- 低速服务器(合作方提供) #8 (无需排队,但可能非常慢)
- 低速服务器(合作方提供) #9 (无需排队,但可能非常慢)
- 低速服务器(合作方提供) #10 (稍快但需要排队)
- 低速服务器(合作方提供) #11 (稍快但需要排队)
- 低速服务器(合作方提供) #12 (稍快但需要排队)
- 低速服务器(合作方提供) #13 (稍快但需要排队)
- 低速服务器(合作方提供) #14 (无需排队,但可能非常慢)
- 低速服务器(合作方提供) #15 (无需排队,但可能非常慢)
- 低速服务器(合作方提供) #16 (无需排队,但可能非常慢)
- 低速服务器(合作方提供) #17 (无需排队,但可能非常慢)
- 低速服务器(合作方提供) #18 (无需排队,但可能非常慢)
- 下载后: 在我们的查看器中打开
所有选项下载的文件都相同,应该可以安全使用。即使这样,从互联网下载文件时始终要小心。例如,确保您的设备更新及时。
外部下载
-
对于大文件,我们建议使用下载管理器以防止中断。
推荐的下载管理器:JDownloader -
您将需要一个电子书或 PDF 阅读器来打开文件,具体取决于文件格式。
推荐的电子书阅读器:Anna的档案在线查看器、ReadEra和Calibre -
使用在线工具进行格式转换。
推荐的转换工具:CloudConvert和PrintFriendly -
您可以将 PDF 和 EPUB 文件发送到您的 Kindle 或 Kobo 电子阅读器。
推荐的工具:亚马逊的“发送到 Kindle”和djazz 的“发送到 Kobo/Kindle” -
支持作者和图书馆
✍️ 如果您喜欢这个并且能够负担得起,请考虑购买原版,或直接支持作者。
📚 如果您当地的图书馆有这本书,请考虑在那里免费借阅。
下面的文字仅以英文继续。
总下载量:
“文件的MD5”是根据文件内容计算出的哈希值,并且基于该内容具有相当的唯一性。我们这里索引的所有影子图书馆都主要使用MD5来标识文件。
一个文件可能会出现在多个影子图书馆中。有关我们编译的各种数据集的信息,请参见数据集页面。
有关此文件的详细信息,请查看其JSON 文件。 Live/debug JSON version. Live/debug page.