Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/sger/ElixirBooks

List of Elixir books
https://github.com/sger/ElixirBooks

List: ElixirBooks

books concurrent distributed-systems elixir elixir-books elixir-phoenix elixir-school epub erlang erlang-vm fault-tolerance language otp pdf phoenix phoenix-framework programming-elixir programming-erlang programming-language tutorials

Last synced: 2 months ago
JSON representation

List of Elixir books

Awesome Lists containing this project

README

        

# Livros Elixir Incriveis [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)
Conteúdo
====
* [Livros] (# livros)
 * [Livros basicos] (# livros iniciais)
 * [Livros avançados] (# livros avançados)
 * [Desenvolvimento Web] (# desenvolvimento web)
* [Recursos] (# recursos)

**Livros**
====

**Livros basicos**
----

### [Getting Started](http://elixir-lang.org/getting-started/introduction.html) *Free*

Guia oficial de início do Elixir que o guiará pelas base da linguagem. Você também explorará como criar projetos com o Mix e o OTP e aprendera técnicas mais avançadas, como a metaprogramação.

### [Adopting Elixir](https://pragprog.com/book/tvmelixir/adopting-elixir)

Adoção é mais do que programação. O Elixir é um novo idioma empolgante, mas para obter seu aplicativo com sucesso do início ao fim, você precisará saber mais do que apenas o idioma. Você precisa dos estudos de caso e das estratégias deste livro. Aprenda as melhores práticas para toda a vida útil do seu aplicativo, desde o design e a formação de equipes, passando pelo gerenciamento de partes interessadas, até a implantação e o monitoramento. Vá além da sintaxe e das ferramentas para aprender as técnicas necessárias para desenvolver seu aplicativo Elixir do conceito à produção.

### [Elixir School] (http://elixirschool.com/) * Grátis *

A Elixir-School é um esforço aberto e direcionado à comunidade, inspirado na Scala School do Twitter. O conteúdo do site consiste em lições revisadas por pares sobre vários tópicos do Elixir que variam em dificuldade. Atualmente, as lições estão disponíveis em mais de 10 idiomas para ajudar a tornar a programação do Elixir mais acessível para quem não fala inglês.

### [Introducing Elixir](http://shop.oreilly.com/product/0636920030584.do)

O Elixir é uma excelente linguagem se você quiser aprender sobre programação funcional e, com esta introdução prática, descobrirá o quão poderoso e divertido o Elixir pode ser. Essa linguagem combina a robusta programação funcional do Erlang com uma sintaxe semelhante ao Ruby e inclui recursos poderosos para metaprogramação.

### [Études for Elixir](https://startlearningelixir.com/r/etudes-for-elixir) *Free*

Neste livro, você encontrará descrições de programas que você pode escrever no Elixir. Os programas geralmente são curtos e cada um foi projetado para fornecer material prático para um conceito de programação Elixir específico. Esses programas não foram projetados para apresentar uma dificuldade considerável, embora possam solicitar que você vá um pouco além do material e dos exemplos imediatos encontrados no livro Introdução ao Elixir.

### [Elixir Cookbook] (https://www.packtpub.com/application-development/elixir-cookbook)

Este livro é um conjunto de receitas agrupadas por tópico que funciona como uma boa referência para obter idéias ou procurar rapidamente uma solução para um problema. Você começará iniciando uma sessão IEx e usando-a para testar algumas idéias. Em seguida, você executará várias operações, como carregar e compilar módulos, inspecionar seu sistema, gerar um aplicativo supervisionado etc. Além disso, você será apresentado à imutabilidade, trabalhando com estruturas de dados, realizando correspondência de padrões e usando módulos de fluxo para gerar sequências infinitas de dados. Você aprenderá sobre tudo, desde unir cadeias de caracteres até determinar a frequência das palavras no texto. Com relação aos módulos e funções, você também descobrirá como carregar o código de outros módulos e usar proteções e correspondência de padrões nas funções.

### [Elixir in Action](https://www.manning.com/books/elixir-in-action)

O Elixir in Action ensina como resolver problemas práticos de escalabilidade, simultaneidade, tolerância a falhas e alta disponibilidade usando o Elixir. Você começará com o idioma, aprendendo construções básicas e componentes básicos. Então, você aprenderá a pensar em problemas usando a mentalidade de programação funcional do Elixir. Com essa base sólida, você explorará com confiança a perfeita integração do Elixir com o BEAM e a poderosa estrutura OTP de abstrações testadas em batalha de Erlang, que você pode usar imediatamente. Por fim, o livro fornece orientações sobre como distribuir um sistema por várias máquinas e controlá-lo na produção.

### [The Little Elixir & OTP Guidebook](https://www.manning.com/books/the-little-elixir-and-otp-guidebook)

O Guia do Little Elixir & OTP permite que você inicie a programação de aplicativos com Elixir e OTP. Você começa com uma rápida visão geral da sintaxe da linguagem Elixir, juntamente com a programação funcional suficiente para usá-la efetivamente. Em seguida, você mergulhará direto no OTP e aprenderá como ele ajuda a criar aplicativos escaláveis, tolerantes a falhas e distribuídos através de vários exemplos divertidos. Redescubra a alegria de programar com o Elixir e lembre-se de como é ser um iniciante novamente.

### [Learning Elixir] (https://www.packtpub.com/application-development/learning-elixir)

O Elixir, baseado na máquina virtual e no ecossistema de Erlang, facilita atingir metas de escalabilidade, simultaneidade, tolerância a falhas e alta disponibilidade que são perseguidas pelos desenvolvedores usando qualquer linguagem de programação ou paradigma de programação. O Elixir é uma linguagem de programação moderna que utiliza os benefícios oferecidos pelo Erlang VM sem realmente incorporar as sintaxes complexas do Erlang.

### [Programming Elixir ≥ 1.6](https://pragprog.com/book/elixir16/programming-elixir-1-6)

> Este livro é a introdução do Elixir para programadores experientes, completamente atualizado para o Elixir 1.6 e posterior. Explore a programação funcional sem as conotações acadêmicas (fale sobre mônadas apenas mais uma vez). Crie aplicativos simultâneos, mas acerte-os sem todas as dores de cabeça de bloqueio e consistência. Conheça o Elixir, uma linguagem moderna, funcional e simultânea construída na sólida Erlang VM. A sintaxe pragmática do Elixir e o suporte interno para a metaprogramação o tornarão produtivo e o manterão interessado por um longo tempo. Talvez seja a hora certa para a próxima grande coisa. Talvez seja o Elixir.

### [Learn You Some Erlang for Great Good](http://learnyousomeerlang.com)

Olá! Este é o "Learn You Some Erlang for Great Good"! Este livro é para você, se você tem alguma experiência em programação e não conhece muito a programação funcional. Ainda pode ser útil se você for bom demais para isso, à medida que avançamos progressivamente em tópicos cada vez mais avançados.

### [Learn Functional Programming with Elixir](https://pragprog.com/book/cdc-elixir/learn-functional-programming-with-elixir)

A sintaxe direta do Elixir e este passeio guiado oferecem um caminho simples e limpo para aprender técnicas modernas de programação funcional. Nenhuma experiência de programação funcional anterior é necessária! Este livro mostra os conceitos certos no ritmo certo, enquanto você explora valores imutáveis ​​e transformação explícita de dados, funções, módulos, funções recursivas, correspondência de padrões, funções de alta ordem, polimorfismo e tratamento de falhas, evitando efeitos colaterais.

### [Take Off With Elixir](https://bigmachine.io/products/take-off-with-elixir)

Esta não é sua situação típica de "vamos construir um blog". Você estará trabalhando comigo, o líder de desenvolvimento da startup fictícia aeroespacial RED: 4, enquanto mergulhamos no Elixir e conduzimos vários estudos científicos.

### [Elixir succinctly](https://www.syncfusion.com/ebooks/elixir-succinctly) *Gratis*

Este é um livro introdutório sobre Elixir e OTP, escrito para ir direto ao ponto. Quase 100 páginas para aprender o idioma e a plataforma.

**Livros Avancados**
---

### [Designing Elixir Systems with OTP](https://pragprog.com/book/jgotp/designing-elixir-systems-with-otp)

Você sabe codificar no Elixir; agora aprenda a pensar nisso. Aprenda a projetar bibliotecas com camadas inteligentes que moldam as estruturas de dados corretas, fluem de uma função para a seguinte e apresentam as APIs corretas. Adote o mesmo OTP que mantém nossos sistemas telefônicos confiáveis ​​e rápidos por mais de 30 anos. Vá além da compreensão das funções da OTP para saber o que está acontecendo sob o capô e por que isso importa. Usando esse conhecimento, instintivamente saiba como projetar sistemas que oferecem serviços rápidos e resilientes aos usuários, tudo com o foco do Elixir.

### [Craft GraphQL APIs in Elixir with Absinthe](https://pragprog.com/book/wwgraphql/craft-graphql-apis-in-elixir-with-absinthe)

Seu domínio é rico e interconectado, e sua API também. Atualize sua API da web para o GraphQL, aproveitando suas consultas flexíveis para capacitar seus usuários e sua estrutura declarativa para simplificar seu código. O absinto é o kit de ferramentas GraphQL para Elixir, uma linguagem de programação funcional projetada para permitir simultaneidade massiva em arquiteturas de aplicativos robustas. Escrito pelos criadores do Absinthe, este livro o ajudará a tirar o máximo proveito dessas duas tecnologias inovadoras. Crie suas próprias APIs flexíveis de alto desempenho usando orientações passo a passo e conselhos de especialistas que você não encontrará em nenhum outro lugar.

### [Metaprogramming Elixir](https://pragprog.com/book/cmelixir/metaprogramming-elixir)

Escreva um código que escreva código com as macros do Elixir. As macros tornam possível a metaprogramação e definem o próprio idioma. Neste livro, você aprenderá como usar macros para estender o idioma com código rápido e sustentável e compartilhar a funcionalidade de maneiras que você nunca imaginou ser possível. Você descobrirá como estender o Elixir com seus próprios recursos de primeira classe, otimizar o desempenho e criar idiomas específicos do domínio.

### [Designing for Scalability with Erlang/OTP](http://shop.oreilly.com/product/0636920024149.do)

Se você precisar criar um sistema escalável e tolerante a falhas com requisitos de alta disponibilidade, descubra por que a plataforma Erlang / OTP se destaca pela amplitude, profundidade e consistência de seus recursos. Este guia prático demonstra como usar a linguagem de programação Erlang e sua estrutura OTP de bibliotecas, ferramentas e princípios de design reutilizáveis ​​para desenvolver sistemas complexos de nível comercial que simplesmente não podem falhar.

### [Erlang and OTP in Action](https://www.manning.com/books/erlang-and-otp-in-action)

Erlang e OTP in Action ensinam os conceitos de programação simultânea e o uso do modelo de passagem de mensagens de Erlang. Ele o guia por exemplos progressivamente mais interessantes, construindo sistemas em Erlang e integrando-os a aplicativos C / C ++, Java e .NET, incluindo SOA e arquiteturas da web.

### [Programming Erlang](https://pragprog.com/book/jaerlang2/programming-erlang)

Um jogo multiusuário, site, aplicativo em nuvem ou banco de dados em rede pode ter milhares de usuários todos interagindo ao mesmo tempo. Você precisa de uma ferramenta poderosa de força industrial para lidar com os problemas realmente difíceis inerentes a ambientes paralelos e simultâneos. Você precisa do Erlang. Nesta segunda edição do best-seller Programming Erlang, você aprenderá a escrever programas paralelos que escalam sem esforço em sistemas multicore.

### [Erlang In Anger](http://www.erlang-in-anger.com/)

Este livro pretende ser um pequeno guia sobre como ser o médico de Erlang em tempos de guerra. É antes de tudo uma coleção de dicas e truques para ajudar a entender de onde vêm as falhas, e um dicionário de diferentes trechos de código e práticas que ajudaram os desenvolvedores a depurar os sistemas de produção criados em Erlang.

### [Building Scalable Applications with Erlang](https://www.amazon.com/Building-Scalable-Applications-Developers-Library/dp/0321636465?ie=UTF8&*Version*=1&*entries*=0)

Erlang está emergindo como uma linguagem líder para programação simultânea em ambientes empresariais de missão crítica, em que os aplicativos devem oferecer confiabilidade, disponibilidade e escalabilidade excepcionais. Ele já é usado por organizações que variam do Facebook à Amazon, e muitas outras estão adotando ou considerando isso.
Como linguagem funcional, no entanto, Erlang é radicalmente diferente das linguagens orientadas a objetos convencionais como C ++ e Java. Este livro rapidamente leva a programadores experientes orientados a objetos a velocidade com Erlang e os princípios da programação funcional. Jerry Jackson explica minuciosamente os principais conceitos, princípios e recursos de Erlang, fazendo a ponte entre as lacunas conceituais que freqüentemente frustram os desenvolvedores de objetos. Em seguida, ele mostra como usar o Erlang para criar sistemas do mundo real escaláveis ​​em massa, com disponibilidade de até nove noves, ou seja, até 99,9999999999% de tempo de atividade.

### [Erlang and Elixir for Imperative Programmers](http://www.springer.com/la/book/9781484223932)

Aprenda e compreenda Erlang e Elixir e desenvolva um conhecimento prático dos conceitos de programação funcional que os sustentam. Este livro leva a experiência do autor em assumir um projeto que exigia programação funcional e sistemas em tempo real, detalha e organiza. Você obterá o conhecimento necessário sobre as diferenças nos idiomas que conhece, por onde começar e por onde seguir.

### [Property-Based Testing with PropEr, Erlang, and Elixir](https://pragprog.com/book/fhproper/property-based-testing-with-proper-erlang-and-elixir)

O teste baseado em propriedades ajuda a criar testes melhores e mais sólidos com pouco código. Usando a estrutura PropEr em Erlang e Elixir, este livro ensina como gerar automaticamente casos de teste, testar programas com estado e alterar como você projeta seu software para abordagens mais confiáveis ​​e com princípios. Você poderá explorar melhor o espaço do problema, validar as suposições feitas ao apresentar o comportamento do programa e expor deficiências inesperadas em seu design. O PropEr mostrará até como reproduzir os bugs encontrados. Com este livro, você estará escrevendo testes eficientes baseados em propriedades rapidamente.

### [Mastering Elixir](https://www.packtpub.com/application-development/mastering-elixir)

Neste livro, você aprenderá como criar um serviço de hospedagem de arquivos sólido sobre o OTP de Erlang e usar as abstrações do Elixir, que permitem criar aplicativos fáceis de paralelizar e distribuir. Você usará o GenStage para processar os uploads de arquivos e, em seguida, simplificará implementando uma DSL. Você usará o Phoenix para expor seu aplicativo ao mundo. Ao concluir a implementação, você aprenderá como levar seu aplicativo para a nuvem, usando o Kubernetes para implantar, dimensionar e gerenciar automaticamente. Por último, mas não menos importante, você manterá sua paz de espírito, aprendendo a testar minuciosamente e a monitorar seu aplicativo quando ele for lançado.

**Desenvolvimento Web**
---

### [Programming Phoenix](https://pragprog.com/book/phoenix/programming-phoenix)

Não aceite o compromisso entre rápido e bonito: você pode ter tudo. O criador de Phoenix, Chris McCord, o criador de Elixir, José Valim, e o premiado autor Bruce Tate orientam você na criação de um aplicativo que é rápido e confiável. A cada passo, você aprenderá com os criadores do Phoenix não apenas o que fazer, mas por quê. Embalado com informações privilegiadas, este guia definitivo será seu companheiro constante em sua jornada, do novato ao especialista em Phoenix, à medida que você cria a próxima geração de aplicativos da web.

### [Phoenix in Action](https://www.manning.com/books/phoenix-in-action)

Phoenix é uma estrutura da Web moderna criada para a linguagem de programação Elixir. Elegante, tolerante a falhas e com desempenho, o Phoenix é tão fácil de usar quanto o Rails e sólido como a fundação baseada em Erlang da Elixir. O Phoenix in Action baseia-se em suas habilidades existentes em desenvolvimento na Web, ensinando os benefícios exclusivos do Phoenix, juntamente com o Elixir suficiente para fazer o trabalho.

### [Building Web Applications with Erlang](http://shop.oreilly.com/product/0636920021452.do)

Por que escolher Erlang para aplicativos da web? Descubra a resposta prática criando um serviço da Web simples com este livro. Se você é um desenvolvedor web experiente e conhece o Erlang básico, aprenderá a trabalhar com REST, conteúdo dinâmico, soquetes da web e concorrência por meio de vários exemplos. No processo, você verá em primeira mão que Erlang é ideal para criar serviços essenciais aos negócios.

### [Functional Web Development with Elixir, OTP, and Phoenix ](https://pragprog.com/book/lhelph/functional-web-development-with-elixir-otp-and-phoenix)

Elixir e Phoenix estão gerando uma tremenda empolgação como uma plataforma imbatível para a construção de aplicativos da web modernos. Aproveite ao máximo eles ao criar um aplicativo da Web estável com Elixir e OTP. Modele entidades de domínio sem um ORM ou um banco de dados. Gerencie o estado do servidor e mantenha seu código limpo com Comportamentos OTP. Camada em uma interface da Web Phoenix sem acoplá-la à lógica de negócios. Abra portas para novas técnicas poderosas que farão você pensar em desenvolvimento da Web de maneiras fundamentalmente novas.

### [Elixir and Elm Tutorial](https://leanpub.com/elixir-elm-tutorial)

Bem-vindo ao mundo da programação web funcional! Neste livro, aprenderemos como criar aplicativos da Web divertidos, escaláveis e sustentáveis. Usaremos as idéias mais recentes de idiomas emergentes como Elixir e Elm para criar uma experiência divertida. Em vez de focarmos na teoria, adotaremos uma abordagem prática e criaremos um aplicativo no mundo real.

### [Phoenix Web Development] (https://www.packtpub.com/web-development/phoenix-web-development)

Phoenix é uma estrutura moderna de desenvolvimento da web usada para criar APIs e aplicativos da web. Ele é construído no Elixir e é executado no Erlang VM, o que o torna muito mais rápido que outras opções. Com Elixir e Phoenix, você constrói seu aplicativo da maneira certa, pronto para escalar e pronto para as crescentes demandas de aplicativos da web em tempo real.

Este livro aborda os conceitos básicos da estrutura da web do Phoenix, mostrando como criar um aplicativo de votação da comunidade e é dividido em três partes. Na primeira parte, você será apresentado ao Phoenix e ao Elixir e entenderá as principais terminologias usadas para descrevê-las. Você também aprenderá a criar páginas do controlador, armazenar e recuperar dados, adicionar usuários às suas páginas de aplicativos e proteger seu banco de dados. Na segunda seção, você poderá reforçar seu conhecimento sobre a arquitetura de aplicativos em tempo real no Phoenix e não apenas depurar esses aplicativos, mas também diagnosticar problemas neles. Na terceira e na seção final, você terá o entendimento completo da implantação e execução do aplicativo phoenix e deverá se sentir confortável para fazer seu primeiro lançamento do aplicativo

### [Programming Ecto](https://pragprog.com/book/wmecto/programming-ecto)

Os idiomas podem ir e vir, mas o banco de dados relacional perdura. Aprenda a usar o Ecto, a principal biblioteca de banco de dados do Elixir, para conectar seus aplicativos Elixir e Phoenix aos bancos de dados. Controle firmemente os fundamentos do Ecto com um tour módulo a módulo das partes críticas do Ecto. Em seguida, passe para tópicos e conselhos mais avançados sobre práticas recomendadas com uma série de receitas que fornecem instruções claras e passo a passo sobre os cenários comumente encontrados pelos desenvolvedores de aplicativos. Co-autoria do criador do Ecto, este título fornece todos os elementos essenciais que você precisa para usar o Ecto de maneira eficaz.

**Recursos**
====
* [Joe Armstrong - A week with Elixir](https://joearms.github.io/published/2013-05-31-a-week-with-elixir.html)
* [Elixir Sips](http://elixirsips.com)
* [LearnElixir.tv](https://www.learnelixir.tv/)
* [Google+](https://plus.google.com/communities/115770991058707869622)
* [Reddit](https://www.reddit.com/r/elixir)
* [Stack Overflow](http://stackoverflow.com/questions/tagged/elixir)
* [Exercism.io](http://exercism.io/languages/elixir)
* [Elixir Radar Newsletter](http://plataformatec.com.br/elixir-radar)
* [Elixir Koans](http://elixirkoans.io)
* [Erlang Factory](https://www.youtube.com/channel/UCKrD_GYN3iDpG_uMmADPzJQ)
* [Awesome Elixir](https://github.com/h4cc/awesome-elixir)
* [Discover Elixir & Phoenix](https://www.ludu.co/course/discover-elixir-phoenix)
* [Elixir School](http://elixirschool.com/)
* [Elixir for Programmers](https://codestool.coding-gnome.com/courses/elixir-for-programmers)

Contribuicoes
====
Suas contribuicoes sao sempre bem vindas, basta seguir [as regras](https://github.com/sger/ElixirBooks/blob/master/CONTRIBUTING.md)!

Licenca
====
Creative Commons License
Este trabalho esta licenciado sobre a Creative Commons Attribution 4.0 International License.