Introdução
Muitas pessoas da rede social do passarinho azul (essa mesma que você imaginou) me procuraram para saber um bom roadmap de estudos em Elixir, e bem, eu não sou a maior referência da área, mas creio que posso guiar com clareza qualquer um que queira aprender sobre essa linguagem maravilhosa. Dito isso, resolvi juntar todo o conteúdo que mapeei e filtrei para o melhor aprendizado em Elixir dada a minha experiência estudando-os. Dessa forma, só apresentarei conteúdos que ESTUDEI e que me ajudaram a entender melhor a linguagem.
Parte 1 - Entendendo o básico
A primeira parte para um bom estudo, independentemente da linguagem, são as bases, entender concisamente os tipos básicos, operadores, funções, sintaxe e afins é de suma importância. Dessa forma, nada melhor do que aprender isso logo de cara pela documentação da linguagem. Nela você já terá acesso à aba GUIDES
, com um guia bem entendível dos principais elementos que formam a linguagem Elixir. No entanto, caso queira algo mais tátil, visual e direto ao ponto, é possível estudar todos esses conteúdos por meio do ElixirSchool. Assim, se estudadas a sério, suas bases teóricas serão excelentes para um bom entendimento da linguagem.
E caso você goste de cursos em vídeo, é possível complementar os estudos por eles, no YouTube e na Udemy você encontra alguns canais ensinando Elixir com uma didática excelente, sendo eles:
E Sobre a prática?
-
Para praticar os tipos básicos e operações, aí vai uma opinião MINHA:
- Utilizar o iex: Eu sempre apoiei o começo dos estudos sobre a linguagem por meio da ferramenta iex, que já vem instalada com o Elixir, a mesma possibilita ao desenvolvedor criar funções, operações e manipular diversos elementos da linguagem sem ter que abrir uma IDE, fazendo tudo pelo terminal. Desse modo, eu incentivo imensamente o uso dela para o maior costume de testar as coisas em um ambiente seguro e prático.
- MUITOS EXERCÍCIOS: Hoje, não vejo um site mais completo para praticar Elixir que não o Exercism. Os desafios nele contidos te permitem explorar as mais diversas formas de resolução e manipulação de dados, e em contextos divertidos, sem contar a ferramenta incrível de mentoria em que o estudante pode solicitar de forma GRATUITA na plataforma, onde alguém mais experiente pode ajudar.
- Projetos simples: começar com projetos simples sempre é uma boa escolha, criar um módulo com funções que manipulam as estruturas de dados do Elixir, interagem com a criação e manipulação de arquivos, etc.
Parte 2 - Conhecendo ferramentas e libs
Após um bom estudo do básico da linguagem, creio que o próximo passo seria entender o mix, uma das principais ferramentas do Elixir, a partir dela é possível criar um conjunto de diretórios que permitem uma excelente estruturação do código, juntamente com exemplos de testes, libs e etc...
Você também pode acessar um conteúdo de ótima qualidade no ElixirSchool
Praticas com o Mix:
-
Aqui vão algumas sugestões para se praticar no mix:
- Aplicação de libs (credo, oban, plugcowboy, money, etc.).
- Criação de Plugs (Caso não saiba o que raios são Plugs em Elixir, recomendo o meu Post sobre).
- Testes unitários com ExUnit e uma introdução ao TDD utilizando a lib mix-testwatch.
- Primeiro CRUD com Ecto.
- Criação de um projeto de gastos financeiros (CLI ou utilizando alguma lib para ter componentes visuais)
- Criação de um projeto simulando um banco (Contas, transferencias, saques, depósitos)
- Criar um mini RPG com personagens, habilidades, etc...
Parte 3 - Conhecendo o Framework Web Phoenix
Com uma boa base das partes 1 e 2, já é possível introduzir o framework Phoenix, e você pode aprender a base diretamente na documentação do mesmo. Em contraposição à parte básica do Elixir, não se acha um bom conteúdo gratuito sobre phoenix (pelo menos eu não achei, então sinta-se à vontade para deixar nos comentátios sugesões de conteúdo para eu colocar aqui), somente alguns tutoriais no youtube. Dessa forma, fica a indicação do Elxpro acima citado como um conteúdo introdutório do phoenix, juntamente com o estudo da sua documentação.
Colocando em prática / ideias de projetos
-
A minha principal dica para se estudar o framework é fazendo projetos reais, tais como:
- Consumo de API's de terceiros (ViaCep, Riotgames, Github)
- Criação de usuários
- Criação e autenticação de tokens com a lib Guardian
- Desenvolvimento de alguma API que interage com algum valor monetário (Controle de gastos, Simulação de banco, etc...)
Parte extra - Mapa visual e conclusão
Abaixo temos um bom resumão do que é MUITO interessante estudar caso queira conhecer e utilizar Elixir no dia-a-dia, e lembrando, esse artigo foi escrito com base nas minhas experiências e conteúdos gratuitos de ensino que encontrei na internet, mas para o meu estudo, também utilizei livros e alguns cursos da udemy (todos pagos).
Top comments (9)
Ótimo trabalho!
Obrigado pela menção a meu Canal Professor Adolfo Neto!
Que honra receber seu comentário, professor! Muito obrigado pelo feedback!
Ah, acho que você pode gostar do Elixir em Foco elixiremfoco.com/
Conheço demais! Já escutei todos os podcasts e estou esperando os próximos.
Sensacional!!! ótimo post
Ótimo post.
Parabéns pelo trabalho!
Muito legal. Pena que não vejo a linguagem sendo absorvida pelo mercado, já que não vejo vagas para ela
Boa referência prá aprender qualquer linguagem mesmo. Ficou muito legal!!
Adorei o Mindmap ♥️
show, vou seguindo esse caminho
obrigado