Voltar aos Cursos
AI019 Professional

Programando com Elixir

Um guia abrangente sobre programação funcional e concorrente usando Elixir. Aborda a transição do pensamento orientado a objetos para o pensamento funcional, correspondência de padrões, imutabilidade, o modelo ator para concorrência e a construção de sistemas distribuídos robustos com OTP.

4.8
30.0h
981 estudantes
0 curtidas
Inteligência Artificial
Começar a Aprender

Visão Geral do Curso

📚 Resumo do Conteúdo

Um guia abrangente sobre programação funcional e concorrente usando Elixir. Cobrirá a transição do pensamento orientado a objetos para o funcional, correspondência de padrões, imutabilidade, o modelo de ator para concorrência e a construção de sistemas distribuídos robustos com OTP.

Domine a arte de construir sistemas concorrentes resilientes por meio da beleza da programação funcional.

Autor: Dave Thomas

Agradecimentos: José Valim, Corey Haines, Bruce Tate, Jessica Kerr, Anthony Eden, Chad Fowler, Kim Shrier, Candace Cunningham e Potomac Indexing.

🎯 Objetivos de Aprendizagem

  1. Contraste o modelo de transformação de dados do Elixir com a programação convencional baseada em estado.
  2. Configure o shell interativo do Elixir (IEx) e execute códigos do Elixir via scripts e compilação.
  3. Aplique o operador de correspondência (=), o operador de pinça (^) e o curinga (_) para desestruturar e validar dados.
  4. Explique as implicações teóricas e práticas da imutabilidade sobre desempenho e gerenciamento de memória.
  5. Identifique e utilize os tipos internos do Elixir, incluindo tipos Valor, Sistema e Coleção.
  6. Aplique as regras de escopo de variáveis e a expressão with para gerenciar transformações de dados complexas.
  7. Crie e invoque funções anônimas usando ambas as notações padrão e de captura (&).
  8. Implemente funções nomeadas dentro de módulos usando correspondência de padrões e recursão para lidar com lógicas complexas.
  9. Aplique cláusulas de guarda e parâmetros padrão para controlar o fluxo de execução das funções.
  10. Desconstruir e Construir Listas: Use correspondência de padrões cabeça/cauda para navegar e construir estruturas listas recursivas.

Aulas