Elixir Roadmap
Paulo Castro

Paulo Castro @cyytrus

About: Elixir Evangelist | Erlang Machinist | Rusty Rustacean | Backend Developer

Location:
Brazil
Joined:
Nov 19, 2021

Elixir Roadmap

Publish Date: Apr 22 '22
83 9

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:

  1. Rafael Camarda - Udemy
  2. Elly Academy
  3. Canal do Professor Adolfo Neto
  4. Alquimia Stone
  5. ElxPro

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).

Image description

Comments 9 total

  • Elixir UTFPR (por Adolfo Neto)
    Elixir UTFPR (por Adolfo Neto)Apr 22, 2022

    Ótimo trabalho!
    Obrigado pela menção a meu Canal Professor Adolfo Neto!

  • Allef Gomes
    Allef GomesApr 25, 2022

    Ótimo post.
    Parabéns pelo trabalho!

  • Kátia Cibele
    Kátia CibeleApr 27, 2022

    Sensacional!!! ótimo post

  • marcelo lima do nascimento
    marcelo lima do nascimentoMay 13, 2022

    show, vou seguindo esse caminho
    obrigado

  • jbz
    jbzJul 9, 2022

    Boa referência prá aprender qualquer linguagem mesmo. Ficou muito legal!!

    Adorei o Mindmap ♥️

  • Andrecio Bezerra
    Andrecio BezerraMar 22, 2023

    Muito legal. Pena que não vejo a linguagem sendo absorvida pelo mercado, já que não vejo vagas para ela

Add comment