Olá, devs!
Decidi fazer esse post para compartilhar uma trilha de conhecimentos em Elixir seguindo o próprio Getting Started.
Caso não tenha o Elixir instalado em sua máquina, você pode dar uma olhada no post que escrevi sobre como instalar o Erlang e o Elixir utilizando o asdf.
Com o Elixir instalado, ganhamos três novos executáveis: iex, elixir, elixirc.
IEX
Agora, abra um terminal e rode o comando iex. Isto irá abrir um shell interativo que poderá rodar comandos em Elixir.
ELIXIR
Também é possível rodar um script com o comando elixir PATH_DO_ARQUIVO. Nesse caso, a extensão do arquivo deve ser .exs, o que significa que esse arquivo é um script escrito em Elixir.
Para este exemplo, criaremos um simples arquivo chamado ola_mundo.exs e colocaremos o seguinte comando dentro do arquivo:
IO.puts("Olá mundo!")
Após salvar, é só rodar o comando elixir ola_mundo.exs no terminal e verá um resultado igual ao abaixo:
ELIXIRC
Por fim, temos o comando elixirc que irá compilar um arquivo .ex ou uma pasta que contenha arquivos .ex e irá gerar um .beam para cada módulo criado.
Obs: Iremos entender melhor sobre módulo nos próximos posts.
Primeiro, iremos criar uma pasta chamada primeiro_script e dentro dela vamos criar o arquivo ola_mundo.ex que contém o código abaixo:
defmodule OlaMundo do
def run do
"Olá Mundo"
end
end
Também criaremos dentro da pasta primeiro_script uma pasta chamada core e dentro desta, criaremos o arquivo sucesso.ex que terá o seguinte código:
defmodule Core.Sucesso do
def run do
"Sucesso!"
end
end
Feito isso, teremos uma arquitetura de pastas e arquivos da seguinte forma:
E dentro da pasta primeiro_script iremos rodar o comando que serve para compilar a pasta em que você está no terminal:
elixirc .
Se formos olhar agora, teremos arquivos com a extensão .beam que são os arquivos compilados.
Para finalizarmos, podemos dar um iex dentro da pasta primeiro_script e chamar os módulos compilados e suas funções run para vermos o resultado.
Por hoje é isso, pessoal.
Te vejo no próximo post! :)





Top comments (1)
Ótimo trabalho!
Parabéns Allef 💜